개발 언어/알고리즘
-
Sync, Async 차이 (동기와 비동기)개발 언어/알고리즘 2022. 10. 12. 15:46
Sync와 Async의 차이점은 무엇인가요? 동기식("sync"라고도 함)과 "비동기"라고도 하는 비동기식은 두 가지 유형의 프로그래밍 모델입니다. 이러한 두 모델의 차이점을 이해하는 것은 API(응용 프로그래밍 인터페이스)를 빌드하고, 이벤트 기반 아키텍처를 만들고, 장기 실행 작업을 처리하는 방법을 결정하는 데 매우 중요합니다. 사용할 메서드와 사용 시기를 선택할 때 동기 프로그래밍 및 비동기 프로그래밍에 대한 몇 가지 주요 사항을 아는 것이 중요합니다. Sync(Synchronous, 동기; 동시에 일어나는) 동기는 동시에 일어나는 것을 의미합니다. 요청과 결과가 동시에 일어납니다. 동기식은 차단 아키텍처로 알려져 있으며 반응 형 시스템을 프로그래밍하는 데 이상적입니다. 단일 스레드 모델로서 엄격한..
-
고급 암호화 표준(Advanced Encryption Standard, AES) 이란?개발 언어/알고리즘 2021. 3. 11. 17:23
- 요약 대칭키를 가지고 암호화와 복호화를 한다. AES 뒤의 숫자는 대칭키의 bit수를 나타내는 것이다. (AES-128 : 128bit의 대칭키를 쓰는 암호화 알고리즘) 128bit = 16 byte, 키의 String length = 16자리다. - 개요 고급 암호화 표준(Advanced Encryption Standard, AES)은 2001년 미국 표준 기술 연구소(NIST)에 의해 제정된 암호화 방식이다. AES는 두 명의 벨기에 암호학자인 존 대먼과 빈센트 라이먼에 의해 개발된 Rijndael(레인달, [rɛindaːl]) 에 기반하며 AES 공모전에서 선정되었다. AES는 미국 정부가 채택한 이후 전 세계적으로 널리 사용되고 있다. 1977년 공표된 DES를 대체한 AES는, 암호화와 복호..
-
SHA2 (Secure Hash Algorithm 2) 이란?개발 언어/알고리즘 2021. 3. 11. 17:15
- 정의 SHA-2 (Secure Hash Algorithm 2)는 미국 국가안보국(NSA)가 설계한 암호화 해시 함수들의 집합이다. 암호 해시 함수는 디지털 데이터 상에서 수학적으로 동작하며 알려져 있고 예측된 해시값에 대해 계산된 해시(알고리즘의 실행 출력)를 비교함으로써 사람이 데이터의 무결성을 파악할 수 있게 된다. 이를테면 다운로드한 파일의 해시를 계산한 다음 이전에 게시한 해시 결과물의 결과와 비교하면 다운로드한 파일이 수정 또는 조작되었는지 알 수 있다. 암호 해시 함수의 주요 개념은 충돌 회피이다. 즉, 누구도 동일한 해시 출력 결과가 있는 두 개의 다른 입력값을 알아낼 수 없다. - 스펙 문서 https://web.archive.org/web/20160330153520/http://www..
-
ECDSA(Elliptic Curve Digital Signature Algorithm) 란?개발 언어/알고리즘 2021. 3. 11. 17:11
ECD ( Elliptic Curve Digital Signature Algorithm) 라고도하는 ECDSA 는 더 작은 키 크기를 사용하여 비슷한 수준의 보안을 구현할 수있는 널리 사용되는 DSA 알고리즘의 버전입니다. 이는 2000 년대 중반에 개발 된 공개 키 암호화 기술인 타원 곡선 암호화를 사용하여 수행합니다. 여러 개의 큰 주요 요소의 결과 인 큰 정수에 보안을 적용하는 대신 ECDLP (타원 곡선 불연속 대수 문제)를 사용합니다. - 정의 타원곡선 디지털서명 알고리즘(ECDSA; Elliptic Curve Digital Signature Algorithm)은 타원곡선암호를 전자서명에 접목시킨 암호 알고리즘이다. 이는 비트코인, 이더리움 등의 암호화폐 거래 시 정당한 소유주만이 자금을 쓸 수..