Computer >> 컴퓨터 >  >> 프로그램 작성 >> 프로그램 작성

정보 보안에서 RSA의 단계는 무엇입니까?

<시간/>

RSA 알고리즘은 Ron Rivest, Adi Shamir 및 Leonard Adleman이 설립한 공개 키 서명 알고리즘입니다. 또한 RSA는 일반 데이터를 암호화 및 해독하여 디지털 서명 확인 관리와 함께 정보를 안전하게 교환할 수 있습니다.

RSA 알고리즘은 큰 수의 인수분해에 포함된 복잡성을 기반으로 합니다. RSA 알고리즘은 매우 큰 수를 인수분해하는 효과적인 방법이 없다는 사실에 의존합니다. 따라서 RSA 키를 추론하려면 많은 시간과 처리 능력이 필요합니다.

RSA 알고리즘은 공개 키와 개인 키와 같은 두 가지 다른 키에서 작동하므로 비대칭 암호화 알고리즘입니다. 공개 키는 모든 사람이 사용할 수 있으며 개인 키는 비공개로 유지됩니다. 공개 키는 두 개의 숫자를 포함하며 그 중 하나는 두 개의 큰 소수를 곱한 것입니다.

RSA 암호화에서 메시지는 숨길 필요가 없는 공개 키로 알려진 코드로 암호화됩니다. 이것은 RSA 알고리즘의 수학적 속성을 기반으로 합니다. 메시지는 공개 키로 암호화되었기 때문에 개인 키로 알려진 다른 키로만 해독할 수 있습니다. 따라서 이러한 메시지를 읽기 위해서는 공개 키와 개인 키인 키 세트가 필요합니다.

RSA 알고리즘에는 다음과 같은 단계가 있습니다 -

  • 키 생성
    • P와 Q와 같은 두 개의 큰 소수를 선택하십시오. 소수는 누군가가 알아내기에 복잡할 만큼 커야 합니다.

    • 계산 N =P x Q

    • (P-1)과 (Q-1)의 인수가 되지 않도록 공개 키(즉, 암호화 키) E를 선택합니다.

    • 다음 식이 참이 되도록 개인 키(즉, 복호화 키) D를 선택하십시오 -

      (D x E) 모드 (P - 1) x (Q – 1) =1

    • 암호화의 경우 다음과 같이 일반 텍스트(PT)에서 암호 텍스트(CT)를 계산합니다. -

      CT =PT E 모드 N

    • CT를 암호문으로 수신자에게 보냅니다.

    • 암호화의 경우 다음과 같이 암호문(CT)에서 일반 텍스트(PT)를 계산합니다. -

      PT =CT D 모드 N

  • 암호화/복호화 기능 − 일단 키를 생성할 수 있고, 각각의 키를 사용하여 암호문과 평문을 계산하는 함수에 매개변수를 전달할 수 있습니다.

    • 평문이 m이면 암호문 =me mod n.

    • 암호문이 c인 경우 일반 텍스트 =cd mod n

  • 예를 들어, 여기서 p =17이고 q=13입니다. e의 값은 1

    N =p * q =91

    D =e-1 모드 (p-1) (q-1) =29

    공개 키 쌍 =(91, 5)

    개인 키 쌍 =(91, 29)

    평문(m) 값이 10이면 me mod n =82 공식을 사용하여 인코딩할 수 있습니다.

    이 암호문(c)을 원래 데이터로 복호화하려면 공식 cd mod n =29를 사용해야 합니다.