암호화 알고리즘 중에, 대칭키 알고리즘이 있습니다. 어떤 것인지 간단하게 실습해 보도록 하겠습니다. 파이썬에는 pycryptodome이 있습니다. 이쪽에, 여러 암호화 알고리즘들이 있습니다. 대칭키 알고리즘 중에 AES를 써 보도록 하겠습니다. 이 포스팅에서는 대칭키 알고리즘에 대해서 맛만 볼 것이니, 이 포스팅에서 언급되는 AES에 대해서도 딥 다이브를 하진 않을 것입니다. 먼저, key가 "It is 16byteIt i"입니다. 이 키로 "my oshi is"를 암호화 하겠습니다. MODE_EAX로 암호화를 하였습니다. 다음에, 10번째 줄에서 복호화를 합니다. 여기서 nonce=cipher.nonce를 넣었습니다. 10번째 줄에, cipher_text를 decrypt 해서, plain을 얻어옵니다...
분류 전체보기 검색 결과
최근의 python은 dictionary가 순서가 보장됩니다. 넣은 순서가 유지되는 특성이 있습니다. 여기서 궁금한 점. 그러면 어떻게 가장 먼저 넣은 키와 나중에 넣은 키를 알 수 있을까요? 파이썬의 dictionary와 orderedDict는 popitem 함수가 있습니다. 이 함수는 기본적으로 가장 마지막에 추가한 원소를 제거하면서 가져오는 역할을 합니다. 한 번 사용해 보겠습니다. 먼저, 1부터 4까지 순서대로 OrderedDict에 추가합니다. 다음에, 7번째 줄에 루프를 돌면서, popitem으로 가장 마지막에 추가된 원소를 빼오게 됩니다. 1부터 4까지 있었을 때에는 가장 마지막에 있었던 것이 4입니다. 따라서, 4가 빠질 겁니다. 다음에 1부터 3까지 있을 때에는 가장 마지막에 있던 것이 ..
안녕하세요. 이번시간에는 stage 상태와 tracked, untracked 상태에 대해서 간단하게 짚고 넘어가 보겠습니다. 먼저 .gitignore에 .env가 들어가 있습니다. ls-files로 파일들을 조회해 보겠습니다. git ls-files를 입력하면, track 되는 파일들이 나오게 됩니다. -o 옵션을 붙이면, 다른 파일들이 나오게 됩니다. .env가 나왔네요. 이는 .env는 untracked 됨을 의미합니다. 저는 이 상태에서 1.txt와 .env 파일에 무언가를 추가하였습니다. 다음에 git status를 보겠습니다. 보니까, modified: 1.txt라고만 떠 있습니다. 즉, 깃으로부터 변경 사항이 추적되는 파일을 tracked file이라고 하고, 그렇지 않고 무시되는 파일을 un..
안녕하세요. 장고에서 bulk create 함수를 쓰다가 알게된 itertools의 islice 함수에 대해 간단하게 소개해 보겠습니다. 먼저, islice는 iterator를 리턴합니다. 이 iterator의 next() 메소드가 iterable로부터 선택된 값들을 리턴합니다. 이게 무슨 이야기인지 밑에서 후술하도록 하겠습니다. iterable, start, stop, step 요래 받으면, start로부터 step만큼 증가하는 iterator를 리턴하게 됩니다. step이 0보다 큰 정수라면 어디까지 증가할까요? stop 미만까지 증가합니다. 예제를 몇 개 보면서 이해해 보겠습니다. gen에는 [3, 5, 7, ... , 23]이 저장되어 있습니다. islice의 iterable한 것은 list인 g..
stdio.h에는 rename 함수가 있습니다. 파일 이름을 바꿀 때 쓰는 함수입니다. 이 예제에서는 race condition을 생각하지 않도록 하겠습니다. 제 시스템은 아래와 같습니다. 먼저, rename의 1번째 인자는 oldpath, 2번째 인자는 newpath입니다. 이 예제에서는 old가 a.txt이고, new가 A.txt입니다. 이는, a.txt라는 이름을 가진 파일을 A.txt로 바꾼다는 의미입니다. 성공하면 0을, 실패하면 0이 아닌 값을 돌려줍니다. a.txt에 12345라는 내용을 넣어보겠습니다. echo 12345 > a.txt를 하면 매우 간단하게 됩니다. 다음에, a.txt의 내용을 출력해 봅시다. 그랬더니 12345가 나왔습니다. 이제 제가 만든 프로그램인 re.c를 컴파일해서..
최근댓글