I2P ์ต๋ช… ๋„คํŠธ์›Œํฌ 1.7.0 ๋ฐ i2pd 2.41 C++ ํด๋ผ์ด์–ธํŠธ์˜ ์ƒˆ ๋ฆด๋ฆฌ์Šค

์ต๋ช… ๋„คํŠธ์›Œํฌ I2P 1.7.0๊ณผ C++ ํด๋ผ์ด์–ธํŠธ i2pd 2.41.0์ด ์ถœ์‹œ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. I2P๋Š” ์ผ๋ฐ˜ ์ธํ„ฐ๋„ท ์œ„์—์„œ ์ž‘๋™ํ•˜๋Š” ๋‹ค์ธต ์ต๋ช… ๋ถ„์‚ฐ ๋„คํŠธ์›Œํฌ๋กœ์„œ ์ข…๋‹จ ๊ฐ„ ์•”ํ˜ธํ™”๋ฅผ ์ ๊ทน์ ์œผ๋กœ ์‚ฌ์šฉํ•˜๊ณ  ์ต๋ช…์„ฑ๊ณผ ๊ฒฉ๋ฆฌ๋ฅผ ๋ณด์žฅํ•œ๋‹ค๋Š” ์ ์„ ์ƒ๊ธฐํ•ด ๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค. ๋„คํŠธ์›Œํฌ๋Š” P2P ๋ชจ๋“œ๋กœ ๊ตฌ์ถ•๋˜๋ฉฐ ๋„คํŠธ์›Œํฌ ์‚ฌ์šฉ์ž๊ฐ€ ์ œ๊ณตํ•˜๋Š” ๋ฆฌ์†Œ์Šค(๋Œ€์—ญํญ) ๋•๋ถ„์— ํ˜•์„ฑ๋˜๋ฏ€๋กœ ์ค‘์•™์—์„œ ๊ด€๋ฆฌ๋˜๋Š” ์„œ๋ฒ„๋ฅผ ์‚ฌ์šฉํ•˜์ง€ ์•Š๊ณ ๋„ ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค(๋„คํŠธ์›Œํฌ ๋‚ด ํ†ต์‹ ์€ ์•”ํ˜ธํ™”๋œ ๋‹จ๋ฐฉํ–ฅ ํ„ฐ๋„ ์‚ฌ์šฉ์„ ๊ธฐ๋ฐ˜์œผ๋กœ ํ•จ). ์ฐธ๊ฐ€์ž ๋ฐ ๋™๋ฃŒ).

I2P ๋„คํŠธ์›Œํฌ์—์„œ ์ต๋ช…์œผ๋กœ ์›น์‚ฌ์ดํŠธ์™€ ๋ธ”๋กœ๊ทธ๋ฅผ ๋งŒ๋“ค๊ณ , ์ธ์Šคํ„ดํŠธ ๋ฉ”์‹œ์ง€์™€ ์ด๋ฉ”์ผ์„ ๋ณด๋‚ด๊ณ , ํŒŒ์ผ์„ ๊ตํ™˜ํ•˜๊ณ , P2P ๋„คํŠธ์›Œํฌ๋ฅผ ๊ตฌ์„ฑํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ํด๋ผ์ด์–ธํŠธ-์„œ๋ฒ„(์›น์‚ฌ์ดํŠธ, ์ฑ„ํŒ…) ๋ฐ P2P(ํŒŒ์ผ ๊ตํ™˜, ์•”ํ˜ธํ™”ํ) ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์„ ์œ„ํ•œ ์ต๋ช… ๋„คํŠธ์›Œํฌ๋ฅผ ๊ตฌ์ถ•ํ•˜๊ณ  ์‚ฌ์šฉํ•˜๊ธฐ ์œ„ํ•ด I2P ํด๋ผ์ด์–ธํŠธ๊ฐ€ ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค. ๊ธฐ๋ณธ I2P ํด๋ผ์ด์–ธํŠธ๋Š” Java๋กœ ์ž‘์„ฑ๋˜์—ˆ์œผ๋ฉฐ Windows, Linux, macOS, Solaris ๋“ฑ๊ณผ ๊ฐ™์€ ๋‹ค์–‘ํ•œ ํ”Œ๋žซํผ์—์„œ ์‹คํ–‰ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. I2pd๋Š” I2P ํด๋ผ์ด์–ธํŠธ์˜ ๋…๋ฆฝ์ ์ธ C++ ๊ตฌํ˜„์ด๋ฉฐ ์ˆ˜์ •๋œ BSD ๋ผ์ด์„ ์Šค์— ๋”ฐ๋ผ ๋ฐฐํฌ๋ฉ๋‹ˆ๋‹ค.

๋ณ€๊ฒฝ ์‚ฌํ•ญ:

  • ์‹œ์Šคํ…œ ํŠธ๋ ˆ์ด์šฉ ์• ํ”Œ๋ฆฟ์€ ํŒ์—… ๋ฉ”์‹œ์ง€ ํ‘œ์‹œ๋ฅผ ๊ตฌํ˜„ํ•ฉ๋‹ˆ๋‹ค.
  • i2psnark์— ์ƒˆ๋กœ์šด ํ† ๋ ŒํŠธ ํŒŒ์ผ ํŽธ์ง‘๊ธฐ๊ฐ€ ์ถ”๊ฐ€๋˜์—ˆ์Šต๋‹ˆ๋‹ค.
  • IRCv2 ํƒœ๊ทธ์— ๋Œ€ํ•œ ์ง€์›์ด i3ptunnel์— ์ถ”๊ฐ€๋˜์—ˆ์Šต๋‹ˆ๋‹ค.
  • NTCP2 ์ „์†ก์„ ์‚ฌ์šฉํ•  ๋•Œ CPU ๋กœ๋“œ๊ฐ€ ๊ฐ์†Œํ–ˆ์Šต๋‹ˆ๋‹ค.
  • ์ƒˆ๋กœ์šด ์„ค์น˜์—์„œ๋Š” ์˜ค๋žซ๋™์•ˆ ๋” ์ด์ƒ ์‚ฌ์šฉ๋˜์ง€ ์•Š๋Š” BOB API๊ฐ€ ์ œ๊ฑฐ๋˜์—ˆ์Šต๋‹ˆ๋‹ค(๊ธฐ์กด ์„ค์น˜์—์„œ๋Š” BOB ์ง€์›์ด ์œ ์ง€๋˜์ง€๋งŒ ์‚ฌ์šฉ์ž๋Š” SAMv3 ํ”„๋กœํ† ์ฝœ๋กœ ๋งˆ์ด๊ทธ๋ ˆ์ด์…˜ํ•˜๋Š” ๊ฒƒ์ด ์ข‹์Šต๋‹ˆ๋‹ค).
  • ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์—์„œ ์ •๋ณด๋ฅผ ๊ฒ€์ƒ‰ํ•˜๊ณ  ์ €์žฅํ•˜๊ธฐ ์œ„ํ•œ ์ฝ”๋“œ๊ฐ€ ๊ฐœ์„ ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ํ„ฐ๋„์„ ์„ค์น˜ํ•  ๋•Œ ์„ฑ๋Šฅ์ด ๋‚ฎ์€ ํ”ผ์–ด๋ฅผ ์„ ํƒํ•˜๋Š” ๊ฒƒ์— ๋Œ€ํ•œ ๋ณดํ˜ธ ๊ธฐ๋Šฅ์ด ์ถ”๊ฐ€๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ๋ฌธ์ œ๊ฐ€ ์žˆ๊ฑฐ๋‚˜ ์•…์˜์ ์ธ ๋ผ์šฐํ„ฐ๊ฐ€ ์žˆ๋Š” ๊ฒฝ์šฐ ๋„คํŠธ์›Œํฌ์˜ ์•ˆ์ •์„ฑ์„ ํ–ฅ์ƒ์‹œํ‚ค๊ธฐ ์œ„ํ•œ ์ž‘์—…์ด ์ˆ˜ํ–‰๋˜์—ˆ์Šต๋‹ˆ๋‹ค.
  • i2pd 2.41์—์„œ๋Š” ๋„คํŠธ์›Œํฌ ์•ˆ์ •์„ฑ์„ ์ €ํ•˜์‹œํ‚ค๋Š” ๋ฌธ์ œ๊ฐ€ ์ˆ˜์ •๋˜์—ˆ์Šต๋‹ˆ๋‹ค.
  • i2pd์™€ Java I2P๋ฅผ ๊ธฐ๋ฐ˜์œผ๋กœ ํ•˜๋Š” ๋ผ์šฐํ„ฐ ๊ฐ„์˜ ํ„ฐ๋„์„ ํ…Œ์ŠคํŠธํ•˜๊ธฐ ์œ„ํ•ด ๋ณ„๋„์˜ ํ…Œ์ŠคํŠธ ๋„คํŠธ์›Œํฌ๊ฐ€ ๋ฐฐํฌ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ํ…Œ์ŠคํŠธ ๋„คํŠธ์›Œํฌ๋ฅผ ํ†ตํ•ด ์ถœ์‹œ ์ „ ํ…Œ์ŠคํŠธ ์ค‘์— i2pd์™€ Java I2P ๊ฐ„์˜ ์ƒํ˜ธ ์šด์šฉ์„ฑ ๋ฌธ์ œ๋ฅผ ์‹๋ณ„ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  • ์„ฑ๋Šฅ๊ณผ ๋ณด์•ˆ์„ ํฌ๊ฒŒ ํ–ฅ์ƒ์‹œํ‚ฌ ์ƒˆ๋กœ์šด UDP ์ „์†ก "SSU2"์˜ ๊ฐœ๋ฐœ์ด ์‹œ์ž‘๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ๋˜ํ•œ SSU2๋ฅผ ๊ตฌํ˜„ํ•˜๋ฉด ์•”ํ˜ธํ™” ์Šคํƒ์„ ์™„์ „ํžˆ ์—…๋ฐ์ดํŠธํ•˜๊ณ  ๋งค์šฐ ๋Š๋ฆฐ ElGamal ์•Œ๊ณ ๋ฆฌ์ฆ˜์„ ์ œ๊ฑฐํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค(์ข…๋‹จ ๊ฐ„ ์•”ํ˜ธํ™”์˜ ๊ฒฝ์šฐ ElGamal/AES+ ๋Œ€์‹  ECIES-X25519-AEAD-Ratchet ์กฐํ•ฉ์ด ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค). ์„ธ์…˜ํƒœ๊ทธ).

์ถœ์ฒ˜ : opennet.ru

์ฝ”๋ฉ˜ํŠธ๋ฅผ ์ถ”๊ฐ€