GPG λ°μ΄ν° μνΈν
νμ¬ μ§νμ€μΈ νλ‘μ νΈμμ λμΉν€μΈ AESλ‘ μνΈνλλ ν΄λμ νλ²νΈμ νμ κ³ κ°λ²νΈλ₯Ό λΉλμΉν€ λ°©μμ RSA ν€λ‘ μ ννλ κ²μ κ³ λ €νκ³ μμλ€. κ·Έλ°λ°, μ λ¬λ°μ RSA 곡κ°ν€μ λΉλ°ν€ νμΌμλ μΌλ°μ μΌλ‘ RSA ν€λ₯Ό λ§λ€μμλ ν¬ν¨λλ λΈλ‘μ΄ μλμλ€. ν€ νμΌμ ν¬ν¨λ PGP PUBLIC KEY BLOCK
λ 무μμΌκΉ?
OpenPGP
GPG(GNU Privacy Guard)λ RFC 4880
νμ€μΌλ‘ μ μλ λ°μ΄ν° μνΈν λ°©μμ΄λ€. μ‘°μ§μμ κ°λ°μ©μΌλ‘ μ λ¬λ°μ RSA 곡κ°ν€μ λΉλ°ν€λ μΌλ°μ μΈ RSA ν€μ λ€λ₯΄κ² PGP ν€λ λΈλ‘μΌλ‘ ν¬ν¨λμ΄ μμλ€. μ΄ RSA ν€νμ΄λ λ§₯ OSμμ gnupgλ₯Ό μ€μΉν΄μ GPG ν€λ₯Ό μμ±ν κ²μΌλ‘ 보μΈλ€. κΉνλΈ μ»€λ°μλ GPG ν€λ₯Ό μ¬μ©ν΄μ 컀λ°μ μλͺ
νλλ°μλ μ¬μ©ν μ μλ보λ€. μλ¬΄νΌ μ΄λ©μΌ 보μμ μν΄ μ¬μ©νλ PGPλ₯Ό μ€νμμ€ν νμ¬ κ³΅μ λ κ²μ΄ GPGμΈκ° 보λ€.
Ascii Armor
PostgreSQLμ pycrypto λͺ¨λμμλ λ°μ΄ν° μ볡νλ₯Ό ν΄μΌν λ PGP μνΈν ν¨μλ₯Ό μ¬μ©νλλ° μ΄ κ³Όμ μμ armorμ dearmor λΌλ ν¨μλ‘ PGP ASCII-armor νμμ ν€λ₯Ό bytea
ννλ‘ λ³ννμ¬ ν¨μ νλΌλ―Έν°λ‘ μ λ¬νκ² λλ€. λ§μ½, μλ° μ ν리μΌμ΄μ
μμ λ°μ΄ν°λ² μ΄μ€ ν¨μλ₯Ό νΈμΆν λ λ°μ΄ν° μ볡νΈνλ₯Ό μν 곡κ°ν€ λλ λΉλ°ν€λ₯Ό λ°μ΄νΈ λ°°μ΄λ‘ μ λ¬νλ€λ©΄ Bouncy Castleμ μ¬μ©ν΄μ μμ€ν€ μλ¨Έκ° νμ΄μ§ ννλ‘ νΈμΆν μ μλ€. κ°λ¨νκ² λ§ν΄μ, μμ€ν€ μλ¨Έλ Base64μ²λΌ μμ€ν€μ½λλ‘ λ³΄νΈλ ννλ‘ μμ νκ² μ λ¬νκΈ° μν κ²μΌλ‘ μκ°νλ©΄ λλ€.
RDS Slow Query
AWS RDS λλ Aurora DBλ₯Ό μ¬μ©νλ νκ²½μ΄λΌλ©΄ μ ν리μΌμ΄μ
λ μ΄μ΄μμ λ°μ΄ν°λ² μ΄μ€ νΈμΆν λ λ°μ΄ν° μ볡νΈνμ μ¬μ©λλ 곡κ°ν€μ λΉλ°ν€λ₯Ό νλΌλ―Έν°λ‘ μ λ¬ν λ ν¬λ¦¬ν°μ»¬ν λ¬Έμ κ° μμ μ μλ€. λ§μ½, 2μ΄ μ΄μ μμλλ μ¬λ‘μ° μΏΌλ¦¬κ° κ°μ§λ λ SELECT λλ νλ‘μμ νΈμΆμΈ κ²½μ°μλ μ λ¬λλ λͺ¨λ νλΌλ―Έν°μ κ°μ΄ λ‘κ·Έ λ©μμ§λ‘ ν¬ν¨λλ€. κ·Έλ¬λκΉ, μ¬μ©μμ λ―Όκ°ν κ°μΈμ 보μ 보νΈλ₯Ό μν΄ λ°μ΄ν° μνΈνμ μ¬μ©λλ ν€κ° κ·Έλλ‘ λ
ΈμΆλ μ μλ€
λ μ΄μΌκΈ°μ΄κΈ° λλ¬Έμ 보μ κ΄μ μμλ λ¬Έμ κ° λ μ μλ λΆλΆμ΄λ€.