blockcipher 9

갑작스러운 최종 게시글

https://github.com/enoma422/aes.py.git GitHub - enoma422/aes.py Contribute to enoma422/aes.py development by creating an account on GitHub. github.com 그렇다. 발등에 불이 떨어진 나는... 2일만에 AES를 구현했다. AES를 1,2학년 때 배우지 않았다면 2일만에 할 수 없었겠지... 오랜만에 AES 구현하니까 재밌었다. 갑작스러운 최종 게시글은 아니고 사실... 더 공부할 것이다. key expansion 부분이랑 affine 변환, s box와 GF(2^8)의 연산까지... 거의 현대대수 시간 같다. 아무튼 했다. * https://en.wikipedia.org/wiki/Advan..

블록 암호/AES 2021.12.17

1. AES

주황 체크표시된 단어와 각 라운드의 과정을 공부해나갈 예정입니다... 사실 각 라운드의 과정을 공부해 나가다 보면 Affine 변환이나 Key Expansion, S-Box는 당연히 알아야 각 과정을 이해할 수 있으니까 당연한 소리임... * https://en.wikipedia.org/wiki/Advanced_Encryption_Standard#Definitive_standards 를 참고하여 공부했습니다. * FIPS 197, Advanced Encryption Standard (AES) 를 참고하여 공부했습니다.

블록 암호/AES 2021.10.29

3-2. Padding Oracle Attack과 PCBC

CBC를 공부하다 패딩 오라클 공격이 궁금해져서 찾아보았다. 이론은 위의 사진과 같다. CBC를 작년에 구현해놨기 때문에 패딩오라클공격도 코드를 고치면 할수있겠구나 생각이 들었지만,,, 나에겐 오라클이 없다는 걸 뒤늦게 깨달았다. 오라클 구현은... 너무 복잡해서... 패스. * https://en.wikipedia.org/wiki/Padding_oracle_attack를 참고하여 공부했습니다. * https://en.wikipedia.org/wiki/Block_cipher_mode_of_operation를 참고하여 공부했습니다.

3-1. 블록암호 운용 모드 modes of operation : ECB, CBC

*bitmap image 보충 설명 bitmap image를 암호화 할 때, 각각의 작은 픽셀들이 암호화되기 때문에 Original Image에서 동일한 색상을 가진 픽셀이 암호화 되면 암호화 되어도 전체의 이미지를 구별할 수 있다. ECB를 공부할 때, 재전송 공격에 대해서는 잘 찾아보지 않았는데 이번에 찾아봤다... 네트워크 패킷과 관련해서 많은 내용이 있어서 wiki 문서 전부를 이해할 수는 없었지만, 돌아가는 방식이나 다른 내용들도 천천히 읽어보긴 했다.... 암호도 벅찬 나는 공격은... 너무 어려운 것 같다. 오랜만에 ECB와 CBC 공부하니까... 재밌당... ㅎㅎ @2021.08.18 CBC 예시 추가 * https://en.wikipedia.org/wiki/Block_cipher 를 참고..

2. 블록암호 structure

블록암호는 크게 3가지 구조로 나뉜다.( SPN 구조, Peistal 구조, Lai-Massey 구조) SPN 구조를 사용하는 암호 : AES (Rijndael), 3-Way, Kalyna, Kuznyechik, PRESENT, SAFER, SHARK, and Square. Peistel 구조를 사용하는 암호: US Data Encryption Standard (DES), the Soviet/Russian GOST, Blowfish and Twofish. Lai-Massey 구조를 사용하는 암호: IDEA and IDEA NXT 작년에 공부할 때는, SPN구조와 Peistel 구조만 공부를 했었는데 이번에 확인했을 때 Lai-Massey 구조를 처음 봤다. 그래서 좀 더 자세히 공부하기도 했다. Lai-..

1. 블록암호의 정의와 운용모드

* https://en.wikipedia.org/wiki/Block_cipher 를 참고하여 공부했습니다. * Secure PRP와 균등분포 샘플링은 강의 자료를 참고하여 공부했기에 자세히 포스팅하지 못했습니다. * Secure PRP는 균등분포 샘플링과... 아주 수학적인 내용이 많이 나오기 때문에... 많은 자료가... 있지 않을까요 구글에? * Padding 관련 부분도 2차 목표인 패딩 추가 구현 때 더 깊게 공부할 예정입니다... (대충 패딩이 뭐가 있는지 찾아만 봤다는 소리)