2014-06-21 1 views
0

환영합니다! 내 직업은 디지털 서명을 구현하는 것입니다. 공개 키와 비공개 키를 만드는 방법에 대한 모든 것을 읽었지만 바보 같은 일에 매달렸다. RSA 알고리즘을 사용하여이 체크섬 (SHA256)을 어떻게 암호화합니까? 나는 부분을 의미 : c (m) = m^e mod n. 이 체크섬 (16 진수는?)을 int로 변환해야합니다. 그러면^e mod n을 계산할 수 있습니까?파일 체크섬의 디지털 서명 (RSA)을 만드는 방법은 무엇입니까?

+0

이 작업을 직접 수행하려고합니까? 아니면 내장 된 RSA 암호화 공급자를 사용하고 있습니까? [여기보세요] (http://stackoverflow.com/questions/1199058/how-to-use-rsa-to-encrypt-files-huge-data-in-c-sharp) – TheNorthWes

+0

내 목표는 그것을 구현하는 것입니다 내 자체 또는 외부 라이브러리 사용을 피하십시오. – Szycho

+1

왜? 숙제? 보안을 재 구현하는 것이 거의 문제의 골치 거리가 될 수 있습니다. – TheNorthWes

답변

1

체크섬을 암호화하지 않지만 서명합니다. C#을 사용하는 경우 RSACryptoServiceProvider 클래스를 확인하십시오. 특히 MSDN의 Cryptographic Signatures 섹션에는 프로세스에 대한 자세한 설명이 나와 있습니다.

그러나 휠체어를 재발 명하고 지나치게 낮은 수준 인 것으로 보입니다. 아마도 BouncyCastle 또는 무료 CryptoBlackbox SecureBlackbox 패키지와 같은 더 높은 수준의 라이브러리가 사용하기가 더 쉬울 것입니다.