분류 전체보기 (32) 썸네일형 리스트형 [정보보호] PRNG(Pseudorandom Number Generator) Asymmetric Ciphers에 기반한 PRNG(Pseudorandom Number Generator) 비대칭 암호 알고리즘은 키 쌍(private key, public key)을 사용하여 데이터를 암호화 및 복호화한다. 이러한 알고리즘은 output이 키에 의존하기 때문에, 특정 input에 대해 동일한 output을 생성하지 않는다. 즉 암호화된 데이터는 외부에서 봤을 때 무작위로 보이게 된다. 이러한 무작위로 보이는 출력을 사용하여 난수를 생성하는 PRNG를 만들 수 있다. PRNGS란, deterministic 알고리즘을 사용해 pseudorandom number을 생성하는 프로그램이다. 이는 완전히 random 하지는 않지만, 많은 randomness tests를 통과할 수 있다. Asymm.. [정보보호] TLS(Transport Layer Secrecy)에서의 Forward Secrecy Forward Secrecy란 long-term private key가 향후에 노출(compromised) 되더라도 session key가 revealed 되지 않도록 하는 보안이다. TLS 1.2 이전의 보안은 1. RSA의 경우 서버가 private key를 protect 하는 동안까지만 secure하였고 forward secure 하지는 않았다. 2. DHE(Ephemeral DH), ECDHE(Elliptic Curve DH)의 경우에는 forward secure을 제공했다. 이는 임시로 생성된 Diffie - Hellman 키를 사용하다가, 이 키가 compromised 되면 해당 public key를 discard 하고 새로운 키를 생성하여 보안을 유지한다. TLS 1.3에서는 RSA-base.. [정보보호] Elliptic Curve Cryptography ECC는 타원 곡성의 특징을 기반으로 하는 public key crypto 기술(공개키, 개인키 두개 사용)로, 타원 곡선의 특성을 활용하여 작은 bit 크기의 키로도 효율적인 보안을 제공할 수 있다. 이는 비교적 최근 기술이므로 다른 암호화 기술에 비해 분석이 덜 되었지만 그럼에도 불구하고 효율성이 뛰어나다. 기본 개념 elliptic curve는 다음과 같은 식의 형태로, 위 식을 만족하는 모든 (x,y)가 집합 E(a,b)에 속한다. Finite Elliptic Curves Finite Elliptic Curves는 Zp(소수 p를 사용하여 정의된 정수 집합) 또는 GF(2^m) 상의 타원 곡선이다. ECC에서는 variable과 coefficient가 finite 한 값이어야 한다. 현재 fini.. [정보보호] ElGamal Cryptography ElGamal Cryptography는 discrete logarithm 해결의 어려움에 기반하여 finite Galois에서의 exponentiation을 쓴다. Key exchange는 Diffie-Hellman 방식으로 하고, Data encryption 과정을 추가적으로 거친다. random number k는 매번 unique 해야하고, 그러지 않은 경우 결과는 insecure 할 것이다. [정보보호] Diffie-Hellman Key exchange Diffie-Hellman 방식은 public key distribution scheme이지, arbitrary message를 교환하는데에 사용할 수 없지만 대신 common key를 생성할 수 있다. 이 common key 값은 participant에 달려있으며, 키를 교환하는 두 participant만 값을 서로 알 수 있다. finite Galois field 내에서 exponentiation으로 생성된 암호들은 풀기 쉽지만, Diffie-hellman 방식은 discrete logarithm이 풀기 어렵다는 것에 착안하여 만들어진 키 교환 방식이기 때문에 풀기 어렵다. 이는 1 session 과정으로, 브라우저 접속 후 웹사이트 접속 시 브라우저와 서버가 통신하여 key exchange를 한다... [정보보호] RSA RSA란 가장 많이 쓰이는 public-key scheme 중 하나로, finite Galois field 에서의 exponentiation을 기반으로 한다. 큰 소수를 곱하는 것은 쉽지만, 결과로 나온 큰 수를 다시 소인수분해 하는 것은 매우 어렵다. RSA는 이 아이디어를 이용하여 큰 정수(1024, 2048 bits 등)들을 사용해 정수를 factoring 하는데에 드는 cost를 높여 보안을 제공한다. ** 내가 여기서 생겼던 의문은 (e,n)이 public key로써 이미 알려져 있다면, d는 mod n에 대한 e의 multiplicative inverse이므로 충분히 유추될 수 있지 않냐? 라는 것이었다. 하지만 RSA에서 사용되는 수 n은 굉장히 큰 소수 p,q의 곱으로 이루어져 있고, 이 .. [정보보호] Public-Key Cryptography Private-Key Cryptography - Private key가 sender과 receiver에게 동시에 공유되는 symmetric한 암호화 방식이다. - 모든 party들이 동등하게 정보를 나누어 가지기 때문에, receiver이 정보를 forging(위조)한 후 sender로부터 받은 정보라고 주장하는 것을 막을 수 없다. Public-Key Cryptography - 2가지의 키를 사용하는 asymmetric한 암호화 방식이다. 1) Public Key: 모두에게 공유됨 ① message encrypt ② verify signatures 하는데에 사용 2) Private Key: recipient들이 각각 가짐 ① message decrypt ② sign signatures 하는데에 사용 ▶.. [네트워크] Packet delay / Throughput / Traceroute Packet Delay 패킷은 한 호스트에서 일련의 라우터들을 거쳐 다른 호스트에 도착하는데, 이 때 크게 4종류의 지연을 겪게 된다. 1. Processing Delay Processing Delay는 패킷 헤더를 조사하고, 그 패킷을 어디로 보내는지 결정하는 시간이다. (nodal processing) 이 때 비트 수준 오류를 함께 조사하며, 처리 지연은 일반적으로 msec 이하이다. 2. Queueing Delay 각 링크에 대해 패킷 스위치는 출력 buffer을 가지고 있는데, 그 링크가 다른 패킷을 전송하고 있다면 도착하는 패킷은 출력 buffer에서 대기해야 한다. 라우터의 buffer이 가득 차 있는 경우 도착하는 패킷 또는 큐에 대기 중인 패킷이 drop되며 packet loss가 발생한다.. 이전 1 2 3 4 다음