My Life/ToBe

[Network Security] 전자서명, signature

rocksea 2013. 5. 21. 20:30

MIC (Message Integrity Code)  : 메세지가 위변조 되었는지만 확인

MAC (Message Authentication Code) : 서로 대칭키를 사전에 공유하여  Steve -> Ellis 에게 메세지를 보낼경우 Steve가 보낸 메세지가 맞는지에대한 확인여부

HMAC (Hash-based MAC) : 보내는 쪽과 받는 쪽이 HMAC에 사용할 키를 공유하여  보내는 쪽이  키와 메시지를 결합하여 MAC을 추출하여 보내면 받는쪽은 받은 메시지와 키를 이용하여 MAC을 뽑아내고, 이것을 메시지와 함께 받은 MAC과 비교한다.

전자서명 : Steve->Ellis에게 평문을 서명하여 보내는경우  ( Steve의 개인키로 암호화하여 Steve의 공개키로 누구나 풀어볼 수 있도록 확인. RSA와 반대되는 방식)

 

서명생성:

서명검증:

 

 

sha1 hash example

$ openssl dgst -sha1 -out openssl.sha1 openssl-1.0.1e.tar.gz

$ cat openssl.sha1
SHA1(openssl-1.0.1e.tar.gz)= 3f1b1223c9e8189bfe4e186d86449775bd903460

$ cat openssl-1.0.1e.tar.gz.sha1
3f1b1223c9e8189bfe4e186d86449775bd903460

 

hmac hash example

$ openssl dgst -sha1 -hmac 1q2w3e -out hash.hmac plain.txt
$ openssl dgst -sha1 -hmac 1q2w3e -out hash2.hmac plain.txt

$ diff -s hash.hmac hash2.hmac
Files hash.hmac and hash2.hmac are identical

 

서명은 암호화된 메세지에 할 수 없다.

이유는 암호가 풀린 후 평문을 다시 서명하여 다른사용자에의해 변조 될 수 있기때문이다.

 

TTP : Trust Third Party ( 신뢰할수 있는 제3자 )

RSA or AES   +     HASH                    

보안 = 기밀성, 위변조확인,  부인방지, 접근제어, 가용성