Languages/Python
Improve your skills through various languages
-
ν΄λΉ μλ£ λ° μ€μ΅μ λͺ¨λ μν€λ μ€(μ ν ν¬ νλΌμ€ν¬) λ΄μ©μ μ°Έκ³ ν μμ±ν κ²μ λλ€. * μλλ κ° νμΌμ΄ μ΄λ ν κΈ°λ₯μ νλμ§ λνλΈ κ²μ΄λ€. (μΆμ² : μν€λ μ€) λ°μ΄ν°λ² μ΄μ€λ₯Ό μ²λ¦¬νλ models.py νμΌ νμ΄λ³΄ νλ‘μ νΈλ ORM(object relational mapping)μ μ§μνλ νμ΄μ¬ λ°μ΄ν°λ² μ΄μ€ λκ΅¬μΈ SQLAlchemyλ₯Ό μ¬μ©νλ€. SQLAlchemyλ λͺ¨λΈ κΈ°λ°μΌλ‘ λ°μ΄ν°λ² μ΄μ€λ₯Ό μ²λ¦¬νλ€. μ§κΈμ λͺ¨λΈ κΈ°λ°μΌλ‘ λ°μ΄ν°λ² μ΄μ€λ₯Ό μ²λ¦¬νλ€λ λ§μ΄ μ΄ν΄λμ§ μκ² μ§λ§, μ΄ν νλ‘μ νΈλ₯Ό μ§ννλ©΄ μ μ μ μμ κ²μ΄λ€. μλ¬΄νΌ μ§κΈ μ¬λ¬λΆμ΄ μμμΌ ν λ΄μ©μ νμ΄λ³΄ νλ‘μ νΈμλ "λͺ¨λΈ ν΄λμ€λ€μ μ μν models.py νμΌμ΄ νμνλ€"λ κ²μ΄λ€. μλ²λ‘ μ μ‘λ νΌμ μ²λ¦¬νλ forms...
[flask] Do it μ ν ν¬ νλΌμ€ν¬ _ 2. νλ‘μ νΈ κ΅¬μ‘° λ° κ°λ μ΄ν΄ν΄λΉ μλ£ λ° μ€μ΅μ λͺ¨λ μν€λ μ€(μ ν ν¬ νλΌμ€ν¬) λ΄μ©μ μ°Έκ³ ν μμ±ν κ²μ λλ€. * μλλ κ° νμΌμ΄ μ΄λ ν κΈ°λ₯μ νλμ§ λνλΈ κ²μ΄λ€. (μΆμ² : μν€λ μ€) λ°μ΄ν°λ² μ΄μ€λ₯Ό μ²λ¦¬νλ models.py νμΌ νμ΄λ³΄ νλ‘μ νΈλ ORM(object relational mapping)μ μ§μνλ νμ΄μ¬ λ°μ΄ν°λ² μ΄μ€ λκ΅¬μΈ SQLAlchemyλ₯Ό μ¬μ©νλ€. SQLAlchemyλ λͺ¨λΈ κΈ°λ°μΌλ‘ λ°μ΄ν°λ² μ΄μ€λ₯Ό μ²λ¦¬νλ€. μ§κΈμ λͺ¨λΈ κΈ°λ°μΌλ‘ λ°μ΄ν°λ² μ΄μ€λ₯Ό μ²λ¦¬νλ€λ λ§μ΄ μ΄ν΄λμ§ μκ² μ§λ§, μ΄ν νλ‘μ νΈλ₯Ό μ§ννλ©΄ μ μ μ μμ κ²μ΄λ€. μλ¬΄νΌ μ§κΈ μ¬λ¬λΆμ΄ μμμΌ ν λ΄μ©μ νμ΄λ³΄ νλ‘μ νΈμλ "λͺ¨λΈ ν΄λμ€λ€μ μ μν models.py νμΌμ΄ νμνλ€"λ κ²μ΄λ€. μλ²λ‘ μ μ‘λ νΌμ μ²λ¦¬νλ forms...
2022.04.14 -
ν΄λΉ μλ£ λ° μ€μ΅μ λͺ¨λ μν€λ μ€(μ ν ν¬ νλΌμ€ν¬) λ΄μ©μ μ°Έκ³ ν μμ±ν κ²μ λλ€. Version νμ΄μ¬ λ²μ 3.10 / νλΌμ€ν¬ λ²μ 2.1.2 / λΆνΈμ€νΈλ© 5.1 Flask λ? νλΌμ€ν¬(Flask)λ 2004λ μ€μ€νΈλ¦¬μμ μ€νμμ€ κ°λ°μ μλ₯΄λ―Ό λ‘λν(Armin Ronacher)κ° λ§λ μΉ νλ μμν¬λ€. νλΌμ€ν¬λ μλ₯΄λ―Ό λ‘λνκ° λ§μ°μ μ μ₯λμΌμ λμ§ μμ΄λμ΄μλλ° μ¬λλ€μ κ΄μ¬μ΄ λμμ Έ μλΉμ€λ‘ λ§λ€μ΄μ‘λ€κ³ νλ€. νλΌμ€ν¬λ μ₯κ³ (Django)μ λλΆμ΄ νμ΄μ¬ μΉ νλ μμν¬μ μλ μ°λ§₯μΌλ‘ μ리맀κΉνκ³ μλ€. νκ²½μ€μΉ 1. νμ΄μ¬ λ²μ 3.10.4 μ€μΉ μ μ κ²½μ° condaλ₯Ό μ¬μ©νκ³ μμ΄μ λͺ λ Ήμ΄λ‘ λ€μ΄λ°μμ§λ§, anaconda νκ²½μ΄ μλμλΌλ©΄ μλ μ£Όμλ‘ λ€μ΄κ°μ λ€μ΄λ°μμ£ΌμΈμ...
[flask] Do it μ ν ν¬ νλΌμ€ν¬ _ 1. νκ²½ κ΅¬μ± λ° μλ² μ€νν΄λΉ μλ£ λ° μ€μ΅μ λͺ¨λ μν€λ μ€(μ ν ν¬ νλΌμ€ν¬) λ΄μ©μ μ°Έκ³ ν μμ±ν κ²μ λλ€. Version νμ΄μ¬ λ²μ 3.10 / νλΌμ€ν¬ λ²μ 2.1.2 / λΆνΈμ€νΈλ© 5.1 Flask λ? νλΌμ€ν¬(Flask)λ 2004λ μ€μ€νΈλ¦¬μμ μ€νμμ€ κ°λ°μ μλ₯΄λ―Ό λ‘λν(Armin Ronacher)κ° λ§λ μΉ νλ μμν¬λ€. νλΌμ€ν¬λ μλ₯΄λ―Ό λ‘λνκ° λ§μ°μ μ μ₯λμΌμ λμ§ μμ΄λμ΄μλλ° μ¬λλ€μ κ΄μ¬μ΄ λμμ Έ μλΉμ€λ‘ λ§λ€μ΄μ‘λ€κ³ νλ€. νλΌμ€ν¬λ μ₯κ³ (Django)μ λλΆμ΄ νμ΄μ¬ μΉ νλ μμν¬μ μλ μ°λ§₯μΌλ‘ μ리맀κΉνκ³ μλ€. νκ²½μ€μΉ 1. νμ΄μ¬ λ²μ 3.10.4 μ€μΉ μ μ κ²½μ° condaλ₯Ό μ¬μ©νκ³ μμ΄μ λͺ λ Ήμ΄λ‘ λ€μ΄λ°μμ§λ§, anaconda νκ²½μ΄ μλμλΌλ©΄ μλ μ£Όμλ‘ λ€μ΄κ°μ λ€μ΄λ°μμ£ΌμΈμ...
2022.04.13 -
보νΈλμ΄ μλ κΈμ λλ€.
[μνΈνλ‘ν μ½] Diffie-Hellman ν€ μκ³ λ¦¬μ¦ μ½λ ꡬν보νΈλμ΄ μλ κΈμ λλ€.
2021.05.20 -
μμ€μ½λμ λν μ€λͺ μ μ£Όμμ²λ¦¬ ν΄λμμ΅λλ€. κ°λ°λꡬ : "anaconda -> spyder" μΈμ΄ : "python" μ μμλͺ ꡬνμ½λ - myRSA.py # -*- coding: utf-8 -*- """ Created on Thu May 13 13:12:25 2021 @author: hk """ import base64 from Crypto.PublicKey import RSA from Crypto.Cipher import PKCS1_OAEP import tools # ============================================================================= # Key μμ± λ° λ‘λ© # ====================================..
[μνΈ νλ‘ν μ½] μ μμλͺ ꡬννκΈ°μμ€μ½λμ λν μ€λͺ μ μ£Όμμ²λ¦¬ ν΄λμμ΅λλ€. κ°λ°λꡬ : "anaconda -> spyder" μΈμ΄ : "python" μ μμλͺ ꡬνμ½λ - myRSA.py # -*- coding: utf-8 -*- """ Created on Thu May 13 13:12:25 2021 @author: hk """ import base64 from Crypto.PublicKey import RSA from Crypto.Cipher import PKCS1_OAEP import tools # ============================================================================= # Key μμ± λ° λ‘λ© # ====================================..
2021.05.14 -
λμ§νΈ μλͺ • λ©μμ§μ μΆμ²μ λ©μμ§ λ΄μ©μ λν νμ μ μν΄ λ©μμ§ μ 체λ₯Ό μνΈννλ©΄ λλ€ • μ΄λ κ² νλ©΄ λ©λͺ¨λ¦¬κ° λ§μ΄ λ λ€ • λ¬Έμμ κΈ°λ₯μ λμ νλ μμ λΉνΈλΈλ‘μ μνΈννλ λ°©λ²μ΄ νμ • μμ λΉνΈλΈλ‘μ μΈμ¦μ(authenticator)λΌ κ³ νλ€ μΈμ¦μ • μΈμ¦μλ λ³κ²½ μμ΄ λ¬Έμλ§ λ³κ²½νλ κ²μ΄ λΆκ°λ₯ • μΈμ¦μλ₯Ό μ‘μ μμ κ°μΈν€λ‘ μνΈννλ€ λ©΄ μΆμ², λ΄μ©, μμ νμΈν΄μ£Όλ μλͺ μ΄λ€ • SHA-1 κ°μ μμ ν΄μμ½λκ° μ΄λ° μν • λ©μμ§μ 무결μ±μ 보μ₯νμ§λ§ κΈ°λ°μ±μ 보μ₯ λͺ»νλ€ λμ§νΈ μλͺ μ 2κ°μ§ λ°©λ² 1. λ©μμ§μ μλͺ 2. λ©μμ§ ν΄μκ°μ μλͺ 곡κ°ν€μ μν μνΈν(곡κ°ν€ μνΈ) κ°μΈν€μ μν μνΈν(λμ§νΈμλͺ ) μ΅λ 86κΈμκΉμ§ κ°λ₯,κ³ μ μ 128λΉνΈμ΄λ€. (ν€ κΈΈμ΄κ° 10..
[μνΈ νλ‘ν μ½] λμ§νΈ μλͺ | μ μμλͺ μ μν μ볡νΈν | 곡κ°ν€ μ¬μ©μ μν μ볡νΈνλμ§νΈ μλͺ • λ©μμ§μ μΆμ²μ λ©μμ§ λ΄μ©μ λν νμ μ μν΄ λ©μμ§ μ 체λ₯Ό μνΈννλ©΄ λλ€ • μ΄λ κ² νλ©΄ λ©λͺ¨λ¦¬κ° λ§μ΄ λ λ€ • λ¬Έμμ κΈ°λ₯μ λμ νλ μμ λΉνΈλΈλ‘μ μνΈννλ λ°©λ²μ΄ νμ • μμ λΉνΈλΈλ‘μ μΈμ¦μ(authenticator)λΌ κ³ νλ€ μΈμ¦μ • μΈμ¦μλ λ³κ²½ μμ΄ λ¬Έμλ§ λ³κ²½νλ κ²μ΄ λΆκ°λ₯ • μΈμ¦μλ₯Ό μ‘μ μμ κ°μΈν€λ‘ μνΈννλ€ λ©΄ μΆμ², λ΄μ©, μμ νμΈν΄μ£Όλ μλͺ μ΄λ€ • SHA-1 κ°μ μμ ν΄μμ½λκ° μ΄λ° μν • λ©μμ§μ 무결μ±μ 보μ₯νμ§λ§ κΈ°λ°μ±μ 보μ₯ λͺ»νλ€ λμ§νΈ μλͺ μ 2κ°μ§ λ°©λ² 1. λ©μμ§μ μλͺ 2. λ©μμ§ ν΄μκ°μ μλͺ 곡κ°ν€μ μν μνΈν(곡κ°ν€ μνΈ) κ°μΈν€μ μν μνΈν(λμ§νΈμλͺ ) μ΅λ 86κΈμκΉμ§ κ°λ₯,κ³ μ μ 128λΉνΈμ΄λ€. (ν€ κΈΈμ΄κ° 10..
2021.05.06 -
곡κ°ν€ μνΈμ λν μ€ν΄ • 곡κ°ν€ μνΈκ° κ΄μ© μνΈλ³΄λ€ μνΈν΄λ μ μμ΄μ λ μμ νλ€(X) • 곡κ°ν€ μνΈ κΈ°μ μ΄ μΌλ°ν λμ΄ κ΄μ© μ νΈλ₯Ό λ μ΄μ μ¬μ©νμ§ μκ² λλ€(X) • κ΄μ© μνΈμ ν€ λΆλ°°λ³΄λ€ 곡κ°ν€λ₯Ό μ¬μ©ν λ ν€ λΆλ°°κ° λ μ½λ€(X) 곡κ°ν€ μνΈ ν΅μ¬ μμ • νλ¬Έ(Plaintext): • μνΈ μκ³ λ¦¬μ¦(Encryption algorithm): • 곡κ°ν€μ κ°μΈν€(Public and private key): • μνΈλ¬Έ(Ciphertext): • λ³΅νΈ μκ³ λ¦¬μ¦(Decryption algorithm): 곡κ°ν€λ‘ μνΈν νκΈ° κ°μΈν€λ‘ μνΈννκΈ° 곡κ°ν€ μνΈμ νΉμ± • ν μμ ν€ νμ – νλλ λ©μμ§ μνΈνμ μ¬μ©νκ³ λ€λ₯Έ νλ λ 볡νΈνμ μ¬μ© • 곡κ°ν€λ₯Ό λ±λ‘ – 곡κ°ν€μ ν μμ μ΄λ£¨λ..
[μνΈ νλ‘ν μ½] 곡κ°ν€ μνΈκ³΅κ°ν€ μνΈμ λν μ€ν΄ • 곡κ°ν€ μνΈκ° κ΄μ© μνΈλ³΄λ€ μνΈν΄λ μ μμ΄μ λ μμ νλ€(X) • 곡κ°ν€ μνΈ κΈ°μ μ΄ μΌλ°ν λμ΄ κ΄μ© μ νΈλ₯Ό λ μ΄μ μ¬μ©νμ§ μκ² λλ€(X) • κ΄μ© μνΈμ ν€ λΆλ°°λ³΄λ€ 곡κ°ν€λ₯Ό μ¬μ©ν λ ν€ λΆλ°°κ° λ μ½λ€(X) 곡κ°ν€ μνΈ ν΅μ¬ μμ • νλ¬Έ(Plaintext): • μνΈ μκ³ λ¦¬μ¦(Encryption algorithm): • 곡κ°ν€μ κ°μΈν€(Public and private key): • μνΈλ¬Έ(Ciphertext): • λ³΅νΈ μκ³ λ¦¬μ¦(Decryption algorithm): 곡κ°ν€λ‘ μνΈν νκΈ° κ°μΈν€λ‘ μνΈννκΈ° 곡κ°ν€ μνΈμ νΉμ± • ν μμ ν€ νμ – νλλ λ©μμ§ μνΈνμ μ¬μ©νκ³ λ€λ₯Έ νλ λ 볡νΈνμ μ¬μ© • 곡κ°ν€λ₯Ό λ±λ‘ – 곡κ°ν€μ ν μμ μ΄λ£¨λ..
2021.04.15 -
λͺ¨λ λ΄μ©μ λ€λ₯Έ μλκ° μλ 곡λΆν κ²μ λ³΅μ΅ & μ 리 μ©λλ‘ μ΄ κΈμ λλ€. λμΉ μνΈμ μ리 μμ xμ yμ μμμ μΈμλλ©΄ μ’λ€. λμΉμνΈ νμμ건 • κ°ν μνΈ μκ³ λ¦¬μ¦ • μμ ν λΉλ°ν€ κ³΅μ – λμΉ μνΈμ 보μμ ν€μ λΉλ°μ±μ μν΄μ μ§ μΌμ§λ κ²μ΄μ§ μκ³ λ¦¬μ¦μ λͺ¨λ₯΄κ² ν΄μ μ§μΌ μ§λ κ²μ΄ μλλ€.(컀μ½νμ μμΉ) μνΈμμ€ν λ¨κ³ – νλ¬Έμ μνΈλ¬ΈμΌλ‘ μ ννλ μ°μ° μ ν • λ체: κ°μ λ€λ₯Έ κ²μΌλ‘ λ°κΎΈλ κ²(substitution) • μΉν: μμμ μμλ₯Ό μ¬ μ‘°μ νλ κ² (transposition) – μ¬μ©λλ ν€μ μ • λ¨μΌν€ • μν€ – νλ¬Έ μ²λ¦¬ λ°©λ² • λΈλ‘ μνΈ(block cipher) • μ€νΈλ¦Ό μνΈ(stream cipher) λΈλ‘μνΈ -> 3DES, AES μ€νΈλ¦Ό μνΈ -> ..
[μνΈ μκ³ λ¦¬μ¦] μνΈν μ΄μ 리 | μνΈ | λμΉμνΈ | μ€νΈλ¦Ό & λΈλ‘λͺ¨λ λ΄μ©μ λ€λ₯Έ μλκ° μλ 곡λΆν κ²μ λ³΅μ΅ & μ 리 μ©λλ‘ μ΄ κΈμ λλ€. λμΉ μνΈμ μ리 μμ xμ yμ μμμ μΈμλλ©΄ μ’λ€. λμΉμνΈ νμμ건 • κ°ν μνΈ μκ³ λ¦¬μ¦ • μμ ν λΉλ°ν€ κ³΅μ – λμΉ μνΈμ 보μμ ν€μ λΉλ°μ±μ μν΄μ μ§ μΌμ§λ κ²μ΄μ§ μκ³ λ¦¬μ¦μ λͺ¨λ₯΄κ² ν΄μ μ§μΌ μ§λ κ²μ΄ μλλ€.(컀μ½νμ μμΉ) μνΈμμ€ν λ¨κ³ – νλ¬Έμ μνΈλ¬ΈμΌλ‘ μ ννλ μ°μ° μ ν • λ체: κ°μ λ€λ₯Έ κ²μΌλ‘ λ°κΎΈλ κ²(substitution) • μΉν: μμμ μμλ₯Ό μ¬ μ‘°μ νλ κ² (transposition) – μ¬μ©λλ ν€μ μ • λ¨μΌν€ • μν€ – νλ¬Έ μ²λ¦¬ λ°©λ² • λΈλ‘ μνΈ(block cipher) • μ€νΈλ¦Ό μνΈ(stream cipher) λΈλ‘μνΈ -> 3DES, AES μ€νΈλ¦Ό μνΈ -> ..
2021.04.01 -
- μμ λ΄μ© μμ½λ³Έ ν΄μ ν¨μ μΆ©λ μ νμ± νλλ μ ν΄μ Έμμ xκ° μ ν΄μ Έμκ³ κ·Έμ κ°μ yλ₯Ό ꡬνλ κ² = μ½ν μΆ©λ μ νμ± λ¬΄ν μ§ν© μ€ μ무κ²λ μ£Όμ΄μ§μ§ μμ ν΄μμ κ°μ κ°μ μ°Ύλ κ² = κ°ν μΆ©λ μ νμ±(:λ μΈλ³΄μ° ν μ΄λΈ) λ¨μ ν΄μ ν¨μ: μΆ©λ μ νμ±μ΄ μλ€. -> μΆ©λμ΄ μ μΌμ΄λ¨. μλ¬Έμ΄ λ€λ₯Έλ° ν΄μκ° κ°μ μ μμ ex) a b c a, b a c a λ€μ΄μ μ€νΈ —> ν΄μ κ°μ΄λ€ λΌκ³ μκ°νλ©΄ λ κ²κ°μ. ν΄μ ν¨μ μ건 1. μμ ν¬κΈ°μ λ°μ΄ν° λΈλ‘μ μ μ© 2. μΌμ ν κΈΈμ΄μ μΆλ ₯ 3. κ³μ° μ©μ΄μ±κ³Ό ꡬν κ°λ₯μ± 4. μΌλ°©ν₯ μ±μ§(one-way property) 5. μ½ν μΆ©λ μ νμ±(weak collision resistance) 6. κ°ν μΆ©λ μ νμ±(strong collision ..
[μνΈ νλ‘ν μ½] ν΄μ ν¨μ ꡬννκΈ° | νμΌ ν΄μ κ° λ¬΄κ²°μ± κ²μ¦- μμ λ΄μ© μμ½λ³Έ ν΄μ ν¨μ μΆ©λ μ νμ± νλλ μ ν΄μ Έμμ xκ° μ ν΄μ Έμκ³ κ·Έμ κ°μ yλ₯Ό ꡬνλ κ² = μ½ν μΆ©λ μ νμ± λ¬΄ν μ§ν© μ€ μ무κ²λ μ£Όμ΄μ§μ§ μμ ν΄μμ κ°μ κ°μ μ°Ύλ κ² = κ°ν μΆ©λ μ νμ±(:λ μΈλ³΄μ° ν μ΄λΈ) λ¨μ ν΄μ ν¨μ: μΆ©λ μ νμ±μ΄ μλ€. -> μΆ©λμ΄ μ μΌμ΄λ¨. μλ¬Έμ΄ λ€λ₯Έλ° ν΄μκ° κ°μ μ μμ ex) a b c a, b a c a λ€μ΄μ μ€νΈ —> ν΄μ κ°μ΄λ€ λΌκ³ μκ°νλ©΄ λ κ²κ°μ. ν΄μ ν¨μ μ건 1. μμ ν¬κΈ°μ λ°μ΄ν° λΈλ‘μ μ μ© 2. μΌμ ν κΈΈμ΄μ μΆλ ₯ 3. κ³μ° μ©μ΄μ±κ³Ό ꡬν κ°λ₯μ± 4. μΌλ°©ν₯ μ±μ§(one-way property) 5. μ½ν μΆ©λ μ νμ±(weak collision resistance) 6. κ°ν μΆ©λ μ νμ±(strong collision ..
2021.04.01