๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ

๊ธฐํƒ€/๊ธฐ์ˆ ์กฐ์‚ฌ

[๋ธ”๋ก์ฒด์ธ] ๋ธ”๋ก์ฒด์ธ ๊ฐœ๋… ์ •๋ฆฌ

 

 

์œ ํŠœ๋ธŒ '๋…ธ๋งˆ๋“œ ์ฝ”๋”'์˜ ๋ธ”๋ก์ฒด์ธ ์‹œ๋ฆฌ์ฆˆ ๋ฐ ์ธํ„ฐ๋„ท ๊ฒ€์ƒ‰์„ ํ†ตํ•ด ๋ธ”๋ก์ฒด์ธ ๊ธฐ์ˆ ๊ณผ ์‚ฐ์—…์— ๋Œ€ํ•ด ์ •๋ฆฌํ•œ ๋‚ด์šฉ์ž…๋‹ˆ๋‹ค.

 


 

 

1. ๋ธ”๋ก์ฒด์ธ์ด๋ž€?

  • ๋ง ๊ทธ๋Œ€๋กœ ๋ธ”๋ก๋“ค์ด ๋ชจ์—ฌ์žˆ๋Š” ์ฒด์ธ์œผ๋กœ, '๊ณต๊ณต ๊ฑฐ๋ž˜ ์žฅ๋ถ€'๋กœ ๋ถˆ๋ฆฌ๋Š” ๋ฐ์ดํ„ฐ ๋ถ„์‚ฐ ์ฒ˜๋ฆฌ ๊ธฐ์ˆ ์„ ๋งํ•ฉ๋‹ˆ๋‹ค.
  • ๋ธ”๋ก์ฒด์ธ์€ ์ˆ˜์ •, ์‚ญ์ œ๊ฐ€ ๋˜์ง€ ์•Š๊ณ  ์ถ”๊ฐ€๋งŒ ๊ฐ€๋Šฅํ•œ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์™€ ๊ฐ™์Šต๋‹ˆ๋‹ค. 
  • ๋˜ํ•œ ๋ธ”๋ก์ฒด์ธ์€ ํƒˆ์ค‘์•™ํ™”๋œ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์ž…๋‹ˆ๋‹ค.
    • ์€ํ–‰์ด๋‚˜ ์ •๋ถ€ ๋“ฑ ํŠน์ •ํ•œ ์ค‘์•™ ๊ด€๋ฆฌ์ž๊ฐ€ ๋ฐ์ดํ„ฐ๋ฅผ ๊ด€๋ฆฌํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. 
    • ๋„คํŠธ์›Œํฌ์— ์ฐธ์—ฌํ•˜๋Š” ๋ชจ๋“  ์‚ฌ์šฉ์ž๊ฐ€ ๋ฐ์ดํ„ฐ์˜ ๋ณต์ œ๋ณธ์„ ๊ฐ€์ง€๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. 
  • ์ด๋Ÿฌํ•œ ์  ๋•Œ๋ฌธ์— ๋ฐ์ดํ„ฐ์˜ ์œ„๋ณ€์กฐ๊ฐ€ ์–ด๋ ต๊ณ , ์ •๋ถ€๊ฐ€ ํฌ๋ฆฝํ† ์ปค๋Ÿฐ์‹œ๋ฅผ ๊ฐ์‹œํ•˜๊ฑฐ๋‚˜ ํ†ต์ œํ•˜๊ธฐ ํž˜๋“ญ๋‹ˆ๋‹ค.
  • ๋”ฐ๋ผ์„œ ๊ฑฐ๋ž˜๋‚ด์—ญ์„ ์œ„๋ณ€์กฐํ•˜๊ฑฐ๋‚˜ ํ†ต์ œํ•˜๋ ค๋ฉด, ๋„คํŠธ์›Œํฌ์˜ ๋ชจ๋“  ์‚ฌ์šฉ์ž๊ฐ€ ๋™์‹œ์— ์ปดํ“จํ„ฐ๋ฅผ ๋„๊ฑฐ๋‚˜ ๋ชจ๋“  ๋ณต์ œ๋ณธ์„ ๊ณต๊ฒฉํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ํ•˜์ง€๋งŒ ์ด๋Š” ์‚ฌ์‹ค์ƒ ๋ถˆ๊ฐ€๋Šฅ์— ๊ฐ€๊น์Šต๋‹ˆ๋‹ค.

 

2. ๋ธ”๋ก์ด๋ž€?

์ถœ์ฒ˜ : Samsung Newsroom

  • ๋ธ”๋ก์€ ๋ธ”๋ก์ฒด์ธ์— ์ •๋ณด๋ฅผ ์ถ”๊ฐ€ํ•˜๋Š” ๋ฐฉ๋ฒ•์ž…๋‹ˆ๋‹ค.
  • ๋ธ”๋ก ์•ˆ์—๋Š” ๋ธ”๋ก ์•ˆ์—๋Š” '๋ฐ์ดํ„ฐ', '๋ธ”๋ก ํ•ด์‹œ', '์ด์ „ ๋ธ”๋ก์˜ ํ•ด์‹œ' ์™€ ๊ฐ™์€ ์ •๋ณด๋“ค์ด ๋“ค์–ด์žˆ์Šต๋‹ˆ๋‹ค.

๋ฐ์ดํ„ฐ

  • ๋ฐ์ดํ„ฐ๋Š” ๊ฐ์ข… ์ฆ๋ช…์„œ ๋“ฑ ๋ชจ๋“  ๊ฒƒ์ด ๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  • ๋น„ํŠธ์ฝ”์ธ์˜ ๊ฒฝ์šฐ ๋ˆ„๊ฐ€ ์–ผ๋งˆ๋ฅผ ๊ฐ€์ง€๊ณ  ์žˆ๊ณ , ๋ˆ„๊ฐ€ ๋ˆ„๊ตฌ์—๊ฒŒ ์–ผ๋งˆ๋ฅผ ๋ณด๋ƒˆ๋Š”์ง€ ๋“ฑ์˜ ๊ฑฐ๋ž˜ ๋‚ด์—ญ์ด ๊ทธ ๋ฐ์ดํ„ฐ์ž…๋‹ˆ๋‹ค.

๋ธ”๋ก ํ•ด์‹œ

์ถœ์ฒ˜ : GeekforGeeks

  • ๊ฐ ๋ธ”๋ก์€ ๋ธ”๋ก์— ๋“ค์–ด์žˆ๋Š” ๋ฐ์ดํ„ฐ๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ ๋งŒ๋“ค์–ด์ง„ ๊ณ ์œ ํ•œ ํ•ด์‹œ(hash)๋ฅผ ๊ฐ€์ง€๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.
  • ํ•ด์‹œ๋Š” ํ•ด์‹œ ํ•จ์ˆ˜๋ฅผ ์‚ฌ์šฉํ•ด ๋งŒ๋“ค์–ด์ง‘๋‹ˆ๋‹ค. ํ•ด์‹œ ํ•จ์ˆ˜๋Š” ์ž„์˜์˜ ๊ธธ์ด์˜ ๋ฐ์ดํ„ฐ๋ฅผ ๊ณ ์ •๋œ ๊ธธ์ด์˜ ๋ฐ์ดํ„ฐ๋กœ ๋งคํ•‘ํ•˜๋Š” ํ•จ์ˆ˜์ž…๋‹ˆ๋‹ค.
  • ๋ธ”๋ก์ฒด์ธ์—์„œ ํ•ด์‹œ ํ•จ์ˆ˜๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ์ด์œ ๋Š” ํ•ด์‹œ ํ•จ์ˆ˜์˜ ๋‹ค์Œ๊ณผ ๊ฐ™์€ ํŠน์ง• ๋•Œ๋ฌธ์ž…๋‹ˆ๋‹ค.
    • ๊ฒฐ์ •๋ก ์  : ๋™์ผ input์˜ output์€ ํ•ญ์ƒ ๊ฐ™๋‹ค.
    • ๋‹จ๋ฐฉํ–ฅ ํ•จ์ˆ˜ : ์—ญ์œผ๋กœ output์„ ๊ฐ€์ง€๊ณ  input์„ ์–ป์„ ์ˆ˜ ์—†๋‹ค.
  • ์ฆ‰, ํ•ด์‹ฑํ•˜๋Š” ๋ฐ์ดํ„ฐ๊ฐ€ ๋‹ฌ๋ผ์ง€๋ฉด ์ถœ๋ ฅ๋˜๋Š” ํ•ด์‹œ ๊ฐ’์ด ๋‹ค๋ฅด๊ณ , ํ•ด์‹œ ๊ฐ’์—์„œ ์›๋ž˜ ๋ฐ์ดํ„ฐ๋กœ์˜ ์—ญ๋ณ€ํ™˜์ด ๊ฑฐ์˜ ๋ถˆ๊ฐ€๋Šฅํ•˜๊ธฐ ๋•Œ๋ฌธ์— ๋ฐ์ดํ„ฐ์˜ ๋ฌด๊ฒฐ์„ฑ๊ณผ ๋ณด์•ˆ์„ ์ง€ํ‚ฌ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  • ๋ธ”๋ก์ฒด์ธ์—์„œ ์ฃผ๋กœ ์‚ฌ์šฉํ•˜๋Š” ์•”ํ˜ธํ™” ํ•ด์‹œ ํ•จ์ˆ˜๋กœ๋Š” SHA ๊ณ„์—ด ํ•ด์‹œ ์•Œ๊ณ ๋ฆฌ์ฆ˜์ด ์žˆ์Šต๋‹ˆ๋‹ค. ๋น„ํŠธ์ฝ”์ธ์€ SHA-256์„ ์‚ฌ์šฉํ•˜์—ฌ 256๋น„ํŠธ์˜ ํ•ด์‹œ๊ฐ’์„ ์ƒ์„ฑํ•ฉ๋‹ˆ๋‹ค.

์ด์ „ ๋ธ”๋ก ํ•ด์‹œ

  • ๋ธ”๋ก์ฒด์ธ์—์„œ ํ•ด์‹œ๊ฐ€ ์ค‘์š”ํ•œ ๋˜ ํ•˜๋‚˜์˜ ์ด์œ ๋Š”, ํ•ด์‹œ๊ฐ€ ๋ฐ”๋กœ ๋ธ”๋ก๋“ค์„ ์ฒด์ธ์œผ๋กœ ์—ฐ๊ฒฐํ•ด์ฃผ๊ธฐ ๋•Œ๋ฌธ์ž…๋‹ˆ๋‹ค.
  • ๋ธ”๋ก๋“ค์€ ์ด์ „ ๋ธ”๋ก์˜ ํ•ด์‹œ๋ฅผ ๊ฐ€์ง€๊ณ  ์žˆ๊ณ , ๋ธ”๋ก์„ ์ƒ์„ฑํ•  ๋•Œ ์ด์ „ ๋ธ”๋ก์˜ ํ•ด์‹œ ๊ฐ’๋„ ํฌํ•จํ•ด ํ˜„์žฌ ๋ธ”๋ก์˜ ํ•ด์‹œ๋ฅผ ๋งŒ๋“ญ๋‹ˆ๋‹ค.
  • ๋ธ”๋ก์ฒด์ธ์— ๋ธ”๋ก์„ ์ถ”๊ฐ€ํ•˜๋ ค๋ฉด,
    1. ๋ฐ์ดํ„ฐ๊ฐ€ ์žˆ๊ณ ,
    2. ๋ฐ์ดํ„ฐ์™€ ์ด์ „ ๋ธ”๋ก์˜ ํ•ด์‹œ๋ฅผ ํ•ฉ์ณ์„œ ๋‹ค์‹œ ํ•ด์‹ฑํ•˜๊ณ ,
    3. ๋‚˜๋งŒ์˜ ํ•ด์‹œ๊ฐ€ ์ƒ๊ธฐ๋ฉด ๋ธ”๋ก์ฒด์ธ์— ๋ธ”๋ก์„ ์ถ”๊ฐ€ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. 
  • ์ด๋ ‡๊ธฐ ๋•Œ๋ฌธ์— ์œ„๋ณ€์กฐ๊ฐ€ ๋”์šฑ ์–ด๋ ค์›Œ์ง€๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. ๋ฐ์ดํ„ฐ๊ฐ€ ์กฐ๊ธˆ์ด๋ผ๋„ ๋‹ฌ๋ผ์ง€๋ฉด ํ•ด์‹œ๋„ ๋‹ฌ๋ผ์ง€๊ณ  ๋ชจ๋“  ๋ธ”๋ก์— ์˜ํ–ฅ์ด ๊ฐˆ ๊ฒƒ์ด๊ธฐ ๋•Œ๋ฌธ์ž…๋‹ˆ๋‹ค.

 

์ฐธ๊ณ