보안/컴퓨터보안
-
Modular Arithmetic보안/컴퓨터보안 2019. 10. 13. 18:44
비유적으로 Clock arithmetic - 나누기한 값의 나머지를 말함 ( mod = 나머지. //// 'x mod n' = 나머지. ) - 시계 7시 + 6시해도 13시아니고 1시이듯 0~5까지 6가지 경우 -> Clock Arithmetic #Notation · 7 mod 6 = 1 · 7 = 13 = 1 · ((a mod n) + (b mod n)) mod n = (a+b) mod n · ((a mod n)(b mod n)) mod n = ab mod n · (7 + 12) mod 6 = 19 mod 6 = 1 mod 6 · (7 + 12) mod 6 = (1 + 0) mod 6 = 1 mod 6 Modular Multiplication · 3*4 = 0 ( mod 6 ) · 4*2 = 2 ( m..
-
Integrity보안/컴퓨터보안 2019. 10. 13. 18:00
Integrity에 문제가 생긴 경우 - 데이터를 중간에 가로채서 수정 - 공격자가 Alice인 척 메세지를 보내는 일 Data Integrity - 허용되지 않은 writing을 탐지하는 것이 목표 - Encryption은 Confidenciality를 보장하지만 단독으로는 Integrity를 보장하지 못함 MAC ( Message Authentication Code ) - Integrity를 보장하기 위해 사용된다. - CBC residue(CBC의 마지막 ciphertext block)을 사용한다. - MAC은 IV와 plaintext와 같이 보내진다.0 - Receiver도 반드시 key를 알아야 하고 계산을 해야한다. MAC 사용 예 Plaintext를 보내야하는데 alice가 bob에게 그냥보..
-
AES (Advanced Encryption Standard)보안/컴퓨터보안 2019. 10. 6. 19:29
DES가 수명을 다하고 3DES로 연명하다가 AES 를 사용하게 됌 key sizes: 128-10(rounds) / 192-12(rounds) / 256-14(rounds) bits block size: 128bits Substitution permutation network (not Feistel) 선 하나당 1byte. 4byte -> sub-box #AES-128 sub,permutation - 1.subBtyes~ 2. 3. AES s-box 예를 들어 first 4bit- 1101 -> 10진수로 13 ->16진수로 d last 4bit- 1101-> 10진수로 13 -> 16진수로 d ==> 테이블을 참고시 dd는 c1
-
Block cipher modes보안/컴퓨터보안 2019. 10. 6. 19:10
Block cipher에 대해 공부해서 각 블락들을 암호화하는 방법은 공부했다. 이제 이 블락들을 전체적으로 어떻게 암호화해서 전송하는지에 대해 알아본다. 블락을 전송하면 상대방이 받아서 복호화 해야하는데 그 과정에서 공격자가 블락의 순서를 바꿀수 있다. (Permutation공격, Integrity문제) ECB (Electronic CodeBook) - 각각의 블락을 독립적으로 암호화하는 모드 - 각각의 블락들은 암호화되어 (AES,DES등) 안전하다. - 하지만 블락의 순서들은 확인할 수 없기때문에 (보안 취약점) 사용되지 않는다. (Cut and Paste 공격) 공격자가 C0 C1 C2 C3의 순서를 -> C0, C3, C2, C1으로 바꾸고 decryption한 결과. - C = E(P,K) -..
-
Triple DES보안/컴퓨터보안 2019. 10. 6. 18:16
Triple DES C = E(D(E(k1,m),k2)k3) D = D(E(D(k3,m),k2),k1) 키 옵션은 3가지가 있는데 1. k1, k2, k3,가 모두 다른 경우 : 가장 강력하다. 2. k1=k3 인 경우 : 가장 흔하게 사용된다. 3. k1=k2=k3인 경우 : 3DES가 아닌 그냥 DES와 같아진다. Double DES 를 안쓰는 이유? ★:MITM(Meet In The Middle) 공격 때문 -> 간단하게 설명하면 여러번 encryption한 암호문을 대상으로 브루트포스 횟수를 줄여주는 공격 double DES에서.. C = enc(enc(k1,m),k2), P = dec(dec(k2,m),k1) 이다. 그러므로 dec(C,k2) = dec(enc(enc(k1,m)k2)k2) = d..
-
Block Ciphers보안/컴퓨터보안 2019. 9. 28. 23:26
Block Cipher plain text를 블록단위로 나누어 암호키와 알고리즘을 적용하는 암호화 방식. Block Cipher는 반복으로 구성되어 있다. - 키를 확장한다 (ex. 16byte를 길게만든다? round가 12개면 12개의 key) => 라운드마다 다른 키를 넣는다 - plaintext와 ciphertext가 고정된 크기의 블락으로 이루어져 있다. (64bit or more) - ciphertext는 round-function의 반복으로 부터 얻어진다. (동일한 round function 반복) - round-function의 input에는 key와 이전 round의 output으로 이루어져 있다. - round function 정의해야 한다. - 주로 소프트웨어에서 실행된다. Feist..
-
WLAN Attack보안/컴퓨터보안 2019. 9. 28. 21:06
IV Reuse IV는 24비트(8백만개의 경우의 수)이다. => 컴퓨터의 성능을 생각했을때 결코 많지 않다. -랜덤 IV: 빈번하게 같은 IV가 나타남 (Birthday Paradox) -시퀀셜 IV: 중복은 안되지만 다 돌아가면 끝(금방 다돌림) IV가 되풀이되면 IV와 키스트림이 공개된 상황에서 공격자가 암호화 하는것을 돕는게 된다. C1 (+) C2 = P1 (+) K1 (+) P2 (+) K2 = P1 (+) P2 (이부분 헷갈림) Birthday Paradox 두 사람이 생일이 같을 확률 : 1/365 3명사이에서 2명의 생일이 같을 확률 : 1 - 아무도 생일이 겹치지 않을 확률 => 1- (364/365) x (363/365) 23명 사이에서 생일이 같을 확률 : 0.5 RC4’s weak..