간단 요약
참석자: arj, co, cohesion, dm, hezekiah, jeremiah, jrand0m, luckypunk, nop, some_random_guy, thecrypto, WinBear
회의 기록
--- 로그 시작 Tue Jul 29 16:54:31 2003 17:11 <@hezekiah> Tue Jul 29 21:11:18 UTC 2003 17:11 <@hezekiah> 51번째(아마도) iip-dev 회의입니다. 17:11 <@hezekiah> 안건: 17:11 <@hezekiah> 1.) 환영 인사 17:11 <@hezekiah> 2.) jrand0m의 주제 17:11 <@hezekiah> 3.) 다른 개발자들의 주제 17:11 <@hezekiah> 4.) nop이 오면/온다면 추가할 내용 17:12 <@hezekiah> 5.) 늘 열성적인 군중의 질문과 코멘트 ;-) 17:12 <@hezekiah> 좋아요! 17:12 <@hezekiah> 모두들, 51번째(아마도) iip-dev 회의에 오신 걸 환영합니다 17:12 <@hezekiah> 2번 항목! 17:12 <@hezekiah> jrand0m의 주제 17:12 -!- thetower [none@anon.iip] 님이 #iip-dev에 입장하셨습니다 17:12 * hezekiah 가 마이크를 jrand0m에게 넘긴다 17:12 <@jrand0m> 하위 안건: 17:12 <@jrand0m> 2.1) I2CP 명세 및 개발 상태 17:12 < co> 50차 회의 로그는 어디 있죠? 17:12 <@jrand0m> 2.2) SDK 계획 17:12 <@jrand0m> 2.3) 암호 17:12 <@jrand0m> 2.4) 로드맵 / 네트워크 프로토 상태 17:13 <@hezekiah> co: cohesion이 올리는 중이에요 17:13 <@jrand0m> (그나저나, 마이크는 "mic"가 맞아요) 17:13 <@hezekiah> jrand0m: 미안. :) 17:13 <@hezekiah> jrand0m: (그것도 음향 기술자가 이런 실수를!) 17:13 -!- luckypunk [~yetalohe@anon.iip] 님이 #iip-dev에 입장하셨습니다 17:13 -!- odargur [odargur@anon.iip] 님이 #iip-dev에 입장하셨습니다 17:13 <@jrand0m> 2.1) I2CP: 명세는 CVS에 커밋했고 메시지 하나(MessageStatusMessage)를 약간 수정했습니다 17:14 <@jrand0m> I2CP에 대한 코멘트는 언제나 환영합니다. 빠를수록 좋아요. 17:14 <@hezekiah> jrand0m: CVS의 어디에 있죠? ... 그리고 SF CVS에도 있나요? 17:14 <@jrand0m> 가능한 빨리인 게 좋은 이유는 금요일까지 Java 클라이언트 구현이 동작할 예정이라서예요. 17:14 -!- some_random_guy [~dan@anon.iip] 님이 #iip-dev에 입장하셨습니다 17:14 * thecrypto 이번엔 제발 되길 빌며 손가락을 꼰다 17:14 <@jrand0m> 그리고 주말 끝날 때쯤에는 로컬 전용 router도, 그렇게 기대하고 있어요 17:15 <@jrand0m> 아니 hez, cathedral에만 있어요 17:15 <@jrand0m> 좋은 지적이에요, thecrypto. 17:15 <@jrand0m> 단서: 17:15 <@hezekiah> 으. cathedral이랑 CVS가 아직도 안돼요. 17:15 <@jrand0m> 일부 암호화는 100% 아니지만, 나중에 더 완전한 구현이나 다른 구현을 꽂아 넣을 수 있게 전부 스텁 처리해 뒀어요 17:15 <@jrand0m> hezekiah> 회의 끝나고 잡아드릴게요. 17:15 <@hezekiah> jrand0m: 감사합니다. :) 17:16 <@jrand0m> 명세는 i2p/doc/specs/data_structure_spec/datastructures.html 에 있어요 17:16 <@jrand0m> thecrypto> java 구현 관련해서 덧붙일 거 있나요? 17:16 -!- ArdVark [simple1@anon.iip] 님이 #iip-dev에 입장하셨습니다 17:16 <@jeremiah> 그 로컬 전용 router는 말씀하신 파이썬 걸 의미한 거죠, 아니면 자바도 있나요? 17:17 <@jrand0m> 그건 다를 수 있죠 :) 17:17 <@jrand0m> jeremiah/hezekiah> 파이썬 클라이언트랑 로컬 전용 router는 어떻게 가고 있나요? 17:17 <@thecrypto> 아니요, 좀 이따 얘기할 암호화 이슈 말고는 없을 듯 17:17 <@jrand0m> 좋아요, thecrypto. 17:17 <@hezekiah> jrand0m: 잘 되고 있어요. 어제 TCP 전송 부분을 드디어 동작시켰어요. 17:17 <@jeremiah> 괜찮아 보입니다, 제 쪽보단 hezekiah의 개발 속도에 더 달려 있을 듯해요 17:17 <@hezekiah> jrand0m: Jeremiah가 메시지 구조 관련해서 멋진 걸 하고 있어요. 17:18 <@hezekiah> hezekiah: 마감 맞출 수 있길 바라고 있어요. 17:18 <@jrand0m> 멋져요. 17:18 <@jeremiah> 또... 금요일이 제 생일이라서, 그땐 컴퓨터 앞에 없을 예정이에요 17:18 <@hezekiah> jeremiah: 이해합니다. :) 17:18 <@hezekiah> jeremiah: 미리 생일 축하해요. :) 17:18 <@jeremiah> 고마워요 17:18 <@jrand0m> 살짝 2.4 안건으로 뛰면> 파이썬 로컬 전용 router는 언제쯤 가능할까요? 현실적으로요? 17:19 <@jrand0m> 좋아요, 금요일에 코딩하면 혼내줄 거야 17:19 <@jrand0m> 적어도 가상으로는 17:19 <@hezekiah> jrand0m: 그게 제가 코딩하는 거라 생각했는데요. Python 로컬 전용 router. 17:19 <@jrand0m> 그렇죠, 맞아요 17:19 <@hezekiah> 마감은 8월 1일이에요. 17:19 <@jeremiah> 지금은 바이너리 포맷으로의 메시지 직렬화 쪽을 작업 중이에요 17:19 <@hezekiah> 그건 그렇게 어렵지 않아요. 17:19 <@jeremiah> 네 17:19 <@hezekiah> 하루 이틀 안에 끝내길 바라요. 17:20 <@jrand0m> 그게 금요일이에요 :) 17:20 <@jrand0m> 최고 17:20 <@hezekiah> 8월 1일까지 끝내길 바라요. 현실적으로는 며칠 늦을 수도 있지만, 안 그러길 바랍니다. 17:20 <@jrand0m> 좋아요, 그럼 자바 로컬 전용 쪽은 손대지 않고 자바 클라이언트 API가 정해진 다음 네트워크 명세 작업을 할게요. 17:20 <@hezekiah> 네. 명세는 좋죠. 17:21 <@hezekiah> 제 일은 훨씬 쉬워져요! :) 17:21 <@jrand0m> 맞아요. 17:21 <@jrand0m> 자바 I2CP 테스트 하니스에 대한 두 단락짜리 간단한 안내도 쓸게요 17:21 <@jrand0m> 오늘 밤에 올릴게요 17:22 <@hezekiah> jrand0m: 명세를 이렇게 빨리 쓰는 게 참 좋아요. 17:22 <@hezekiah> 재밌네요. :) 17:22 <@jrand0m> 좋아요, hez/jeremiah/thecrypto> I2CP 관련해서 더 있나요? 17:22 <@jrand0m> ㅋㅋ 17:22 -!- dm [~hifi@anon.iip] 님이 #iip-dev에 입장하셨습니다 17:22 <@hezekiah> 음 ... 17:22 <@hezekiah> 암호 명세가 필요해요! 17:22 < dm> 어서 오세요 17:22 * hezekiah 아기처럼 삐진다 17:22 <@hezekiah> ;-) 17:23 <@hezekiah> 진지하게는, ... 딱히 떠오르는 게 없네요. 17:23 <@jrand0m> 그건 2.3 안건이에요 17:23 <@thecrypto> 2.3 올라오길 아직 기다리는 중 17:23 <@hezekiah> 생각나면, 온라인으로 와서 질문으로 jrand0m을 귀찮게 할게요. :) 17:23 <@jrand0m> 좋아요. 17:23 <@jrand0m> 자, 2.2) SDK 계획 17:23 <@hezekiah> 방금 끝낸 안건 번호가 뭐였죠? 17:23 <@hezekiah> 2.4? 17:23 <@hezekiah> 그리고 2.1은 끝난 건가요? 17:23 <@jrand0m> 2.1요 17:24 <@jrand0m> 이제 2.2> SDK입니다 17:24 <@hezekiah> 좋습니다. 17:24 < dm> 안건에 소수점까지 붙었네요? 벌써 진전이 보입니다. 17:24 <@hezekiah> 이제 길을 찾았네요(길 잃은 게 아니라). 17:24 <@thecrypto> 소수점이 2개일지도요 :) 17:25 <@jeremiah> SDK는 다양한 API 말고 또 뭐가 포함되나요? 17:25 <@jrand0m> SDK는: 클라이언트 API(가능한 만큼), 로컬 전용 router, 사소한 샘플 앱, 그리고 API 사용법 문서입니다. 17:25 <@hezekiah> jrand0m: 문서는 당신이 쓰는 걸로 이해하면 될까요? :) 17:26 <@jrand0m> SDK는 가능한 빨리 내고 싶어요. 그래야 3rd(혹은 2nd나 1st) 파티 개발자들이 I2P 위에서 실행될 애플리케이션을 작성하고 테스트할 수 있고, 네트워크가 운영되면 바로 본격 가동할 수 있죠. 17:26 <@jrand0m> hezekiah> 사실 제가 안 쓰는 게 더 좋아요. 17:26 <@jrand0m> hezekiah> 문서 쓰기 싫어서가 아니라, 너무 가까이에 있어서 그래요. 17:26 <@hezekiah> jrand0m: 알겠습니다. 17:26 <@jrand0m> 실제 코드를 구현하지 않은 사람이 문서를 쓰는 게 좋아요. 그러면 I2CP 명세를 쓰지 않은 사람도 이해하기 쉬워요 17:26 <@hezekiah> jrand0m: 그건 다리에 다다르면 건너죠. 17:26 <@jrand0m> 필요하면 제가 할게요. 17:26 <@jrand0m> 좋아요. 17:27 < dm> 동작하는 네트워크 없이 사람들이 앱을 쓸 이유가 뭐고, 어떻게 테스트하죠. 17:27 <@hezekiah> jrand0m: 아니면 프로토콜 설계자가 먼저 쓰고, 그 다음에 한 번도 다뤄보지 않은 사람이 이해될 때까지 검토하는 건 어떨까요? 17:27 <@jrand0m> 간단한 'talk' 스타일 앱 얘기가 좀 있었어요. 17:27 <@jrand0m> dm> 사람들은 SDK로 테스트할 수 있어요. 17:27 <@thecrypto> 근데 로컬 전용이면 무슨 소용이죠 17:28 <@jeremiah> dm: 완전하진 않지만 메시지를 보낼 수 있는 간단한 네트워크를 구현하려는 거예요 17:28 <@thecrypto> 자기 자신하고만 얘기할 수 있겠네요 17:28 <@jeremiah> 사실 완전 로컬 전용은 아니고, 클라이언트-라우터만 포함하고 router-router 코드는 없어요 17:28 <@jrand0m> thecrypto> 다른 Destination과 대화할 수 있어요. I2P는 위치 독립적이에요 - 로컬이나 원격이나 같아요. 17:29 <@thecrypto> 알겠어요 17:29 < dm> 좋긴 한데, 로컬에서만 테스트 가능하면(여기 여러분 3-4명 외엔) 누가 뭔가를 쓰려는지 잘 모르겠네요. 뭐, 어쨌든 상관없어요. 17:29 <@jrand0m> 그래서 talk 앱은 앱 인스턴스를 두 개 띄워서 자기 자신과 얘기할 수도 있죠 17:30 <@thecrypto> 우리가 원격을 추가하면, 앱은 그냥 동작해야죠 17:30 <@jrand0m> dm> 맞아요, 이건 다른 사람들이 앱을 쓸 수 있게 하려는 전제조건일 뿐이에요. 17:30 <@jrand0m> 정확해요. 17:30 <@jrand0m> 앱은 아무런 변경 없이 그대로 동작할 거예요 17:30 < co> dm: 이건 테스트 애플리케이션이에요. router-router 코드가 작성되면, 다른 사람들과 대화할 수 있게 됩니다. 17:30 <@jeremiah> 로컬 전용이 있으면 병렬 개발이 가능하죠 17:30 < dm> 네, 하지만 앱이 지연 10ms라고 가정하고 실제론 12초면 별로 잘 안 돌아가겠죠 :) 17:31 <@jrand0m> dm 동의 17:31 < dm> 지연은 대략 어느 정도로 보시나요? :) 17:31 <@jrand0m> 지연이 12초라면, 우리가 할 일이 많다는 뜻이죠. 17:31 <@jrand0m> 하지만 그렇게 되진 않을 거예요. 17:31 <@jrand0m> 추정치는 0.6-2.7초 17:31 <@jrand0m> 5,000,000 router 네트워크 기준으로요. 17:31 <@hezekiah> 그런데, 그 얘기 나와서 말인데 ElGamal을 얘기해야 해요. 17:31 <@thecrypto> 가장 오래 걸리는 건 설정이죠 17:31 <@jrand0m> (대략적인 모델은 iip-dev 아카이브 참고) 17:32 < dm> 더 작은 네트워크면 낮아지나요, 높아지나요? 17:32 <@jrand0m> hezekiah> 2.3: 암호. 17:32 <@thecrypto> 그 다음부터는 시간이 급격히 줄어요 17:32 <@jrand0m> dm> 낮아져요. 17:32 <@thecrypto> hezekiah: 아마 제 질문이랑 같을 걸요 17:32 <@jrand0m> thecrypto> 맞아요, 설정 시간은 메시지 전달과는 오프라인이에요 [즉, 메시지 보내기 전에 tunnel을 미리 설정] 17:32 < dm> 오케이, 확인해 봤어요 ;) 17:32 <@jrand0m> 헤헤 17:33 <@jrand0m> 좋아요. SDK의 마지막 부분 - 앱 17:33 <@jrand0m> co/thecrypto: 자바 talk 구현은 어때요? 가능성? 기간? 계획? 흥미? 17:34 <@thecrypto> API가 올라오면, 아마 일주일, 길어도 2주면 talk 하나 만들 수 있을 듯, co 동의? 17:34 <@jeremiah> 채팅은 jabber router로 내장할 수도 있죠? 17:34 < co> 꽤 쉽게 할 수 있을 거예요. 17:34 < co> thecrypto: 동의합니다. 17:34 <@jrand0m> jeremiah> jabber를 잘 모르지만, jabber가 API 위에서 돌아갈 수 있다면 좋죠 17:35 <@jrand0m> 좋아요 co & thecrypto 17:35 <@jrand0m> jeremiah> 이건 개념 증명용 사소한 앱일 뿐이라는 점 유의해요, 끝내주는 익명 IM 시스템은 아니에요 :) 17:35 <@jeremiah> 아직은요 ;) 17:35 <@thecrypto> 그 기능은 나중에 추가할 수 있어요 17:35 <@jeremiah> ㅇㅋ 17:36 <@jrand0m> 헤헤 17:36 <@thecrypto> 작게 시작합시다 17:36 * jrand0m 일정에 적는다 "기능 추가: 끝내주게 만들기" 17:36 < some_random_guy> ㅎㅎ 17:36 < some_random_guy> 좋은 기능이네요 :) 17:36 -!- dm2 [~hifi@anon.iip] 님이 #iip-dev에 입장하셨습니다 17:37 <@jeremiah> jrand0m: 2.1에서 놓친 듯한데, DHT로 kademlia는 어떤가요? Chord보다 유지가 덜 필요하거든요 17:37 -!- nop [nop@anon.iip] 님이 #iip-dev에 입장하셨습니다 17:37 < nop> 미안해요 17:37 <@jrand0m> 그리고 언젠가 IIP 리디자인도 이 위에서 돌아가게 누가 작업해야겠죠. 17:37 -!- dm [~hifi@anon.iip] 님이 종료하셨습니다 [Ping timeout] 17:37 < nop> 뭐라고요? 17:37 < nop> 누가요 17:37 < nop> 어디서 17:37 < nop> 언제 17:37 < nop> ? 17:37 -!- dm2 님의 대화명이 dm으로 변경되었습니다 17:37 <@jrand0m> 오, 호랑이도 제 말 하면 오네요 17:37 < WinBear> 왜요? 17:37 < WinBear> 아니에요 17:37 < nop> 전 사실 천사예요 17:37 <@hezekiah> ㅋㅋ 17:38 <@thecrypto> 누가 nop에게 로그 좀 건네줘요 17:38 < WinBear> azrel 17:38 <@jrand0m> jeremiah> kademila는 괜찮은 DHT고, chord/tapestry 계열과 함께 sloppy dht들까지 네트워크 명세에서 확실히 검토할 거예요. 17:38 <@jeremiah> jrand0m: 좋아요 17:38 <@hezekiah> thecrypto: 제가 하고 있어요. :) 17:38 < nop> 죽여주는 게 하나 있다고 들었어요 17:38 < nop> chord/middle이라고 17:38 -!- hif [~hifi@anon.iip] 님이 #iip-dev에 입장하셨습니다 17:39 < nop> Brandon Wiley에게 물어보는 게 좋아요 17:39 * jrand0m !thwaps nop 17:39 < nop> 그게 아플 줄 알았어요 17:39 <@hezekiah> ㅋㅋ 17:39 <@hezekiah> Brandon Wiley가 누구죠? 17:39 < nop> 아마 jrand0m이 여러 번 토론했을 사람이죠 17:39 < nop> :) 17:39 < nop> 누가 로그를 이메일로 좀 17:39 < dm> Brandon은 jrandom의 진짜 이름이에요, 걸렸네! 17:39 <@hezekiah> 보내는 중입니다. 17:40 <@hezekiah> 진정하세요, nop. :) 17:40 < nop> 하하 17:40 < dm> Brandon Wiley는 첫 번째 Freenet 프로그래머로, 시스템의 창시자인 Ian Clarke와 함께 개발을 공동으로 시작했죠 17:40 < nop> userx는 여기 있나요 저기 있나요 17:40 < WinBear> 내 brandon wiley랑 얘기해도 돼요 17:40 <@hezekiah> 좋아요. 보냈어요 ... 제 메일 클라이언트가 15K 첨부파일을 전송해주기만 하면요. 17:41 <@thecrypto> 우리 많이 얘기했죠 :) 17:41 <@hezekiah> nop: UserX는 여기에도 저기에도 없어요. 17:41 <@hezekiah> 좋아요! 17:41 <@hezekiah> 로그 보냈어요, nop! 가서 읽으세요. :) 17:41 <@thecrypto> 이제 기다리죠 17:41 <@jrand0m> 좋아요, nop이 따라잡을 시간을 잠깐 주는 동안 SDK 관련 생각 있는 분? ;) 17:41 <@hezekiah> jrand0m: 이제 로그 일은 끝났으니 ... kademlia가 뭐죠? 17:42 <@jrand0m> 또 하나의 학계 DHT :) 17:42 <@hezekiah> kademlia 웹페이지 링크는 어디서 구하죠? 17:42 -!- Erazerhead [JohnDoe@anon.iip] 님이 #iip-dev에 입장하셨습니다 17:42 <@jeremiah> http://kademlia.scs.cs.nyu.edu/ 17:42 <@hezekiah> 감사합니다. :) 17:42 <@thecrypto> YAADHT? 17:42 <@hezekiah> ㅋㅋ 17:42 <@hezekiah> 요즘 이름들 참 ... 17:43 <@jrand0m> 그리고 CS 얘기가 나왔는데 이해 안 가는 게 있으면 citeseer.nj.nec.com/cs 로 가세요 17:43 < WinBear> klamidia? 17:43 <@hezekiah> 알겠습니다. 17:43 < nop> jrand0m: 저도 방금 citeseer 얘기하려 했어요 17:43 < dm> SDK의 ETA는요? 17:44 * jrand0m I2P에 임질 같은 걸 주입하는 건 피하고 싶어요 17:44 * jrand0m SDK를 다음 주에 내길 바랍니다. 아마 다음 금요일? 17:44 * thecrypto 또 손가락 한 쌍을 꼰다 17:45 <@jrand0m> 좋아요. 2.3) 암호로 넘어갑니다. 17:45 * hezekiah thecrypto가 대략 13세트 손가락을 다 꼬고 있는 걸 상상했다가 ... 이제 다 썼겠구나 하고 깨닫는다. 17:45 <@hezekiah> 만세! 17:45 * jrand0m nop이 있는지 콕 찔러 확인 17:45 <@hezekiah> 암호! 17:45 <@hezekiah> 시작으로 제가 하나 있어요. :) 17:46 <@thecrypto> 저도 하나 있어요 17:46 <@thecrypto> 먼저! :) 17:46 * jrand0m 는 없으니 둘이 알아서 하세요 17:46 <@hezekiah> thecrypto가 먼저 하세요. :) 17:46 <@jrand0m> thecrypto> 말해요 17:46 <@jrand0m> :) 17:46 <@thecrypto> 좋아요, Elgamal 얘기입니다 17:47 <@thecrypto> 공통 p와 alpha를 쓸지 말지를 정해야 해요 17:47 -!- some_random_guy [~dan@anon.iip] 님이 종료하셨습니다 [BitchX: the original point-and-click interface.] 17:47 <@thecrypto> 공통 p와 alpha의 문제는 모두의 키를 같은 시간에 바꿀 방법을 찾아야 한다는 거죠 17:48 <@jrand0m> 즉: 정말 나쁩니다. 17:48 < co> thecrypto: 미안, p와 alpha가 뭔가요? 17:48 <@thecrypto> 장점은 최적화된 값을 고를 수 있고 공개키로 전송되는 데이터 양이 매우 작다는 거죠 17:48 * jrand0m 몇 비트 아끼는 것 말곤 공통 p와 alpha를 쓸 좋은 이유는 없어 보여요 17:48 <@thecrypto> co: 쉽게 말해, 특별한 큰 숫자들이에요 17:49 <@jrand0m> thecrypto> 자주 암호화하는 목적지의 p와 alpha에 맞춰서도 최적화할 수 있어요 17:49 <@thecrypto> 아니면 elgamal이 어떻게 동작하는지 설명할까요 17:49 <@thecrypto> jrand0m: 네 17:49 < co> thecrypto: 알겠습니다. 17:49 <@thecrypto> 모두가 서로 다른 p와 alpha를 가질 수도 있어요 17:50 <@jeremiah> 관심 있는 분들을 위해: http://www.wikipedia.org/wiki/ElGamal_discrete_log_cryptosystem 17:50 <@thecrypto> 이 경우 전송되는 데이터 양이 훨씬 커지고, 어떻게 패킹할지 정해야 해요 17:50 <@jrand0m> 좋아요, 고마워요 jeremiah 17:50 <@jrand0m> 훨씬 커지나요? 17:50 <@jrand0m> p와 alpha가 달라지면 더 작은 p 와 alpha를 쓸 수 있다고 생각했는데요? 17:51 <@thecrypto> 160비트 숫자 대신 이제 1024비트 2개와 160비트 1개를 말하는 거예요 17:51 <@thecrypto> 전체적으로 2308 17:51 <@hezekiah> 288바이트 17:51 <@hezekiah> 별거 아니죠. 17:52 <@jrand0m> 좋아요, 그리 나쁘지 않네요. 256바이트로 계획했어요 17:52 <@hezekiah> 이 키들은 그렇게 자주 전송되지 않죠, 그렇죠? 17:52 <@jrand0m> 32바이트 늘어도 괜찮아요 17:52 <@jrand0m> hezekiah> DHT에 삽입돼요 17:52 <@hezekiah> 아! 17:52 <@hezekiah> 그래서 작게 하려 했군요. 17:53 <@thecrypto> 또, elgamal에 대해 우리가 신경 써야 할 다른 문제도 있어요 17:53 <@jrand0m> 음, RouterInfo 구조가 10K 정도 되는 건 크게 문제 아니에요 17:53 -!- mrflibble [mrflibble@anon.iip] 님이 #iip-dev에 입장하셨습니다 17:53 <@jrand0m> 좋아요, 뭔가요 thecrypto? 17:53 <@thecrypto> 메시지 팽창이 2예요, 암호화나 서명의 크기가 메시지의 두 배가 됩니다 17:54 <@jrand0m> ElG 암호화는 AES 키만 대상으로 해요 17:54 <@jrand0m> ElG 서명은 SHA256 해시만 대상으로 하고요 17:55 <@thecrypto> 좋아요, 그냥 짚고 넘어가려던 거였어요 17:55 <@hezekiah> jrand0m: 그래서 전 _정말_ 헷갈리네요. 17:55 <@thecrypto> 원래 문제로 돌아가면, p와 alpha를 공유할까요, 아니면 각자 다른 p와 alpha를 가질까요? 17:55 <@jrand0m> hezekiah> 흠? #Payload에 대한 데이터 구조 명세를 읽었나요? 17:55 <@jrand0m> 그걸로 질문/생각 있나요 hezekiah? 17:55 * dm 이제 DHT가 어떻게 동작하는지 이해함. 17:55 <@jrand0m> nop> 생각은? 17:55 <@jrand0m> 잘했어요 dm 17:55 <@hezekiah> 서명이 서명된 데이터의 두 배 크기라면, IC2P 명세에서 서명이 128바이트라는 건 왜죠? 17:56 < nop> 아니요 17:56 < nop> 공유 p 17:56 <@hezekiah> 512여야 하는 거 아닌가요? 17:56 <@thecrypto> 바이트의 해시예요 17:56 < nop> 그리고 alpha 17:56 < dm> DHT에 참여할 때 해야 할 일이 많은 것 같네요, 그래도 돌아가긴 하겠죠. 17:56 < nop> 공유 base, 공유 p 17:56 <@jrand0m> hezekiah> 비트 / 바이트요. 17:56 < nop> 이게 많은 위험을 제거할 거예요 17:56 <@thecrypto> 그럼 얼마로 할까요? 17:56 <@hezekiah> 흠 17:56 <@jrand0m> nop> 3년 뒤에, 모두가 동시에 p와 alpha를 바꾸길 원할까요? 17:56 < nop> 그리고 우리 프로토콜을 표준에 맞추죠 17:57 <@thecrypto> p와 alpha 관련 대규모 공격에 문을 여는 셈이거든요 17:57 < nop> jrand0m: 지금이라는 시점, 그리고 제가 보는 시점에서는 cooked primes라는 게 있어요 17:57 <@thecrypto> 그게 성공하면 네트워크 전체가 다운돼요 17:57 < nop> 시대에 맞춰 수정할 수 있다고 봐요 17:57 < nop> 하지만 고정된 oakley 승인 prime이 권장됩니다 17:57 < nop> 검토를 통해 충분히 안전함이 확인됐으니까요 17:58 < nop> 그리고 그건 우리가 prime 생성에 대해(그것도 소수 판정일 뿐인) 가정하는 것보다 더 나은 기반이에요 17:58 <@thecrypto> 소수가 아니면 암호화나 서명이 안 되니 그냥 버리면 되죠 17:59 <@jrand0m> 동의해요, 그들이 더 나은 prime을 갖고 있죠. 그러면 그 prime 중 하나가 인수분해되면, 그걸 쓰는 모두가 노출되는 거죠? 17:59 < dm> 흠, 가야겠군요. 이거 로그 남죠? 17:59 < nop> jrand0m: 맞아요 17:59 <@thecrypto> 네 17:59 < nop> jrand0m: 그런 일이 생기면 우리 모두 알게 될 거예요 17:59 < nop> prime 생성은 위험을 줄여주지 않아요 17:59 -!- dm [~hifi@anon.iip] 님이 종료하셨습니다 [it better be] 17:59 <@thecrypto> 어떻게 알죠? 17:59 < nop> 게다가 계산 시간도 늘어나요 17:59 -!- hif [~hifi@anon.iip] 님이 종료하셨습니다 [] 17:59 < nop> thecrypto: 표준으로 정의된 Oakley prime 세트를 쓰면, 깨졌을 때 알 수 있어요 18:00 <@thecrypto> 어떻게요? 18:00 < nop> 아주 공개적인 뉴스가 될 테니까요 18:00 <@jrand0m> nop> NSA가 깬 게 아니면요. 18:00 < co> nop: 그런 prime이 몇 개 있죠? 적으면, 사용하는 게 위험할 수도 있겠어요. 18:00 <@thecrypto> 네, 수동 도청은 여전히 위협이죠 18:00 <@thecrypto> 그리고 p와 alpha를 생성해서 테스트하는 프로그램은 한 시간이면 만들 수 있어요 18:00 <@jrand0m> nop> 국가 안보 위협이면 아주 공개적인 뉴스는 아닐 수도 있죠. 18:00 < co> 잠깐... 아니, 바보 같은 질문이네요. 취소. 18:01 < nop> 그렇긴 한데, 암호 커뮤니티 여러 사람들에게 들은 바론 NSA보다 먼저 누군가가 풀면 풀릴 거라 봐요 18:01 < nop> 우리가 prime을 생성한다고 해서 그게 안전해지는 건 아니고요 18:01 < nop> 그들이 그 prime을 풀면 18:01 < nop> 새 알고리즘을 고민하는 게 나을 거예요 18:01 <@jrand0m> 좋아요. 18:02 < nop> 정적 값을 쓰세요, 그러면 암호 분석 관련 문제를 줄이고, 실수로 인한 위험도 줄일 수 있어요 18:02 <@jrand0m> 저는 중립이었고, 공유되고 검증된 prime으로 가는 것도 괜찮아요. 18:02 <@thecrypto> 좋아요, 그럼 prime을 고르죠 18:02 <@jrand0m> nop> 암호 명세는 여전히 간트차트에 당신 이름으로 적혀 있어요 18:02 <@thecrypto> 그리고 그 prime에 대한 generator도 있나요? 18:02 < nop> 네 18:02 < nop> 네, 있어요 18:03 < nop> 2 18:03 < nop> 제가 갖고 있는 prime들에 대한 primitive root가 그거예요 18:03 < nop> prime 크기는 얼마로 할까요? 18:03 <@thecrypto> 2048-4096 사이가 좋을 듯 18:03 <@hezekiah> 2048 키를 쓰는 거죠, 맞나요? 18:03 < nop> 네, 그러니 4096 이상의 prime을 쓰세요 18:04 <@thecrypto> 공유라는 특성 때문에 우리가 더 노출돼요 18:04 <@thecrypto> 이게 뜨게 되면, 깨볼 가치가 아주 큰 prime이 될 거고요 18:04 * cohesion 회의를 놓쳤다 18:04 < co> 이 prime은 ElGamal 내부에서 쓰는 거죠, 그렇죠? 18:04 <@hezekiah> 그럼 키가 4096비트가 되나요? 18:04 <@cohesion> 누가 로그 남겼나요? 18:04 < nop> co 네 18:04 < nop> 아니요 hezekiah 18:04 < nop> 키는 2048이에요 18:04 <@cohesion> 오케이 18:04 < nop> prime은 4096보다 클 거고요 18:04 * cohesion 다시 일하러 간다 18:04 <@hezekiah> 알겠습니다. 제 끔찍한 이해를 용서해 주세요. :) 18:04 < nop> 금방 올게요 18:05 <@thecrypto> p와 alpha는 고정할 수 있어요, alpha는 2고 p는 우리가 고르는 prime이죠 18:05 < nop> 좋아요, prime 후보들을 이메일로 보낼게요 18:05 < nop> 몇 시간만 주세요, 일이 좀 있어서요 18:05 * jeremiah 저녁 먹으러 가요, 나중에 로그 읽을게요 18:05 <@thecrypto> 비밀 키는 a, 0과 p - 2 사이의 숫자예요 18:05 <@thecrypto> 공개 키는 2^a mod p 18:06 < nop> 다음 주제로 넘어갔다가 제가 그때 같이 하죠, 금방 올게요, 일하는 중이라 급하게 처리할 일이 하나 있어요 18:06 <@hezekiah> 오케이, 그러니까 제 'x'를 'a'라고 부르고 18:06 <@hezekiah> ... 제 'g'를 'alpha'라고 부르는 거군요. 18:06 < nop> 알고리즘 설명은 개인 메시지로 옮겨 주세요 18:06 <@hezekiah> thecrypto: 맞죠? 18:06 <@thecrypto> 네 18:06 <@jrand0m> 좋아요. 그럼 thecrypto, nop, hezekiah가 나중에 알고리즘 세부사항을 조율하세요. 18:06 < nop> 알겠어요 18:06 < nop> 물론이죠 18:06 <@hezekiah> 오케이 ... thecrypto, 질문은 여기까지인가요? 18:06 <@thecrypto> 그럼 넘어가죠 18:06 < nop> prime은 이메일로 보낼게요 18:06 <@thecrypto> 예 18:06 <@thecrypto> 스 18:06 <@hezekiah> 오케이. 제 차례! :) 18:07 <@hezekiah> 왜 서명에 ElGamal을 쓰죠? 18:07 <@jrand0m> 좋아요. 2.4) 로드맵 / 네트워크 프로토 상태 18:07 <@jrand0m> 아직은 아니에요 hez :) 18:07 <@jrand0m> 아, hez 18:07 <@hezekiah> 언제 물어볼 수 있죠? 18:07 -!- dm [~hifi@anon.iip] 님이 #iip-dev에 입장하셨습니다 18:07 <@jrand0m> ElG 공개키가 있는 상황에서, 뭘 추천하나요? 18:07 <@thecrypto> nop 돌아오면요 18:07 <@jrand0m> 아니, 네가 맞아요, 내가 틀렸고. 지금이 맞는 타이밍이네요. 18:07 < co> 다음 주제로 가죠. 18:07 <@hezekiah> jrand0m: 음, 문제는 이거예요: 18:07 <@hezekiah> 속도 18:08 <@hezekiah> 오늘 암호 관련해서 만지작거리다가, 끔찍한 충격을 받았거든요. 18:08 <@hezekiah> ElGamal은 서명 검증에서 DSA나 RSA보다 _천문학적으로_ 느렸어요. 18:08 <@jrand0m> hezekiah> 그건 라이브러리 구현 문제인가요, 아니면 알고리즘 문제인가요? 18:08 <@hezekiah> 모르겠어요. 18:09 <@hezekiah> 하지만 Applied Crypto를 확인해 보니 적어도 _일부_ 문제는 ElGamal 자체에 있더군요. 18:09 <@hezekiah> AC에는 DSA, RSA, ElGamal의 서명/검증에 걸리는 시간이 표로 있어요. 18:09 <@jrand0m> 그럼 RSA로 암호화/복호화/서명까지 가자는 얘기인가요? 18:09 <@hezekiah> 저 18:09 <@hezekiah> 아직 확정적으로 제안하는 건 아니에요. 18:09 <@jrand0m> ...물론 RouterInfo 구조에 서명 공개키를 하나 더 추가할 수도 있어요 18:10 <@hezekiah> AC에 따르면 ElGamal 검증이 9.30초입니다. 18:10 <@hezekiah> RSA는 0.08초 18:10 <@thecrypto> 1024비트 기준 18:10 <@jrand0m> 헉. 18:10 <@hezekiah> DSA는 1.27초 18:10 <@hezekiah> 이제 제 문제가 보이죠. 18:10 <@hezekiah> ElGamal은 엄청 느려요 ... 18:10 <@jrand0m> 우리는 <100ms 검증이 필요해요. 18:10 <@jrand0m> 가능하면 <10ms 18:10 <@hezekiah> ... 제 CPU는 333MHz예요. 18:11 <@hezekiah> 참고로, 이 계산은 SPARC II에서 했어요 18:11 <@hezekiah> 저는 AMD K6-2 333MHz입니다. 18:11 <@jrand0m> sparc 2는 40Mhz 머신이죠. 18:11 <@hezekiah> 제 Python 모듈(백엔드는 C지만 좀 수상함)로 ElGamal 서명 검증을 해보니 17:11 < luckypunk> 세상에 18:11 < luckypunk> 음 18:11 <@hezekiah> jrand0m: SPARC는 잘 몰랐어요. 18:11 <@hezekiah> 아무튼, 20초 정도 걸렸어요. 18:12 <@hezekiah> 아니면 좀 더. 18:12 < luckypunk> 1GHz - 2GHz 프로세서면 걱정할 필요 없죠. 18:12 < co> hezekiah: 그렇다면, 최신 컴퓨터에서는 검증 속도가 받아들일 만하겠네요. 18:12 <@hezekiah> DSA와 RSA는 거의 즉시였어요. 18:12 <@jrand0m> hezekiah> 알아요. sparc 2는 '92년에 빠른 편이었죠 18:12 <@hezekiah> 어쨌든, 그래서 이 얘기를 꺼낸 거예요. 18:12 <@hezekiah> DSA 키를 추가할 수도 있지만, 그건 키가 2개란 뜻이죠 18:12 <@thecrypto> 엄청 빠르지 않은 사람들도 고려해야 해요 18:12 <@hezekiah> 아니면 RSA로 가거나요. 18:12 <@jrand0m> ElG를 택한 이유가 아주 강했던 건 아니었던 걸로 기억해요. RSA 대비 선호가 약했죠. 18:13 <@hezekiah> 아니면 느린 검증 시간을 감수하고 ElG를 쓰거나요. 18:13 <@jrand0m> thecrypto> 당연하죠. 18:13 <@thecrypto> elgamal 쓰자고 한 건 nop이었어요 18:13 <@hezekiah> thecrypto: 맞아요. 엄마 아빠도 결국은 I2P를 투명하게 쓰게 될 거예요. 18:13 <@jrand0m> 386용 부팅 가능한 배포판도 원할 거고, 애플릿 내 구현도 원해요. 18:13 <@hezekiah> 엄마 아빠는 최신 하드웨어가 없을 수도 있죠. 18:13 < luckypunk> 아놔 18:14 < luckypunk> 이걸 쓰려는 사람이라면 최소 p100 정도는 있어요. 18:14 < co> 더 빠르다고 해서 더 약한 알고리즘을 선택해 보안을 타협하진 맙시다. 18:14 <@hezekiah> co: 그런 제안은 아닙니다. 18:14 <@thecrypto> elgamal과 DSA는 동등해요 18:14 <@jrand0m> 좋아요. 그럼 RSA/ElG 선택을 재검토하죠. 코드 변경은 문제 없을 거예요. 18:14 < luckypunk> 그냥 참죠. 18:14 <@hezekiah> co: RSA와 DSA도 ElGamal만큼 평판이 좋아요. 18:14 < luckypunk> ㅋㅋ 18:14 < luckypunk> 익명성이 중요하면 18:14 <@hezekiah> thecrypto: 사실과 달라요. 18:14 < luckypunk> 속도는 별로 신경 안 쓸 걸요. 18:14 <@thecrypto> hezekiah: 둘 다 같은 일반 알고리즘의 구현이에요 18:14 < dm> 여기선 누가 두 가지의 CPU 사용량을 정확히 알아내는 게 순서겠죠 :) 18:14 <@jrand0m> luckypunk> Freenet 관련 불만을 좀 들어본 적 있나요? 18:15 <@hezekiah> thecrypto: DSA는 암호화를 못 해요. 서명 전용이고, ElG보다 훨씬 빨라요. 18:15 <@thecrypto> hezekiah: DSA의 서명/검증 식이 더 빨라서 그래요 18:15 <@jrand0m> dm> Applied Crypto에서 RSA 검증이 ElG의 1/100 속도라고 벤치마크했으면 전 그걸로 충분해요. 18:15 <@thecrypto> 암호화/복호화엔 ElG, 서명/검증엔 DSA를 쓸 수 있어요 18:15 <@jrand0m> 선택지는 RSA로 가거나 RouterInfo 구조에 DSA 키(~256바이트 추가)를 더 넣는 거예요 18:15 <@hezekiah> 맞아요. 하지만 그러면 DHT에 공개키가 2개 들어가죠. 18:16 <@jrand0m> 그게 어때서요? 18:16 < co> 공개키는 하나로 합시다. 그게 덜 혼란스러워요. 18:16 <@hezekiah> co: '혼란'스러운 건 개발자뿐일 테고 ... 우리는 우리가 뭘 하는지 알아야 하죠. :) 18:16 <@thecrypto> 이건 nop을 기다리는 게 나아 보여요 18:16 <@hezekiah> 그렇죠. 18:16 <@jrand0m> 하지만 그게 100배 느리면... 18:16 <@jrand0m> 어쨌든, 암호 설계 논의는 오프라인에서 계속하죠. 18:17 <@hezekiah> jrand0m: 메일링 리스트에 이메일 보내줄래요? 18:17 < luckypunk> jrand0m: 제발, 못 기다리겠으면 40초 기다리기 싫으면 꺼져요. 18:17 <@thecrypto> 아니면 회의 본론 끝난 뒤에 18:17 <@jrand0m> 젠장, 전 매일 리스트에 메일 보내요 :) 18:17 <@jrand0m> 헤헷 lucky 18:17 -!- hif [~hifi@anon.iip] 님이 #iip-dev에 입장하셨습니다 18:17 <@jrand0m> 좋아요. 18:17 <@jrand0m> 그럼> 2.4) 로드맵 / 네트워크 프로토 상태 18:17 -!- hif 님의 대화명이 dm2로 변경되었습니다 18:18 <@jrand0m> 자바와 I2CP 작업 때문에 네트워크 프로토에 관해선 co의 메시지에 답한 것 외엔 많이 못 했어요. 18:18 <@jrand0m> 로드맵은 여전히 목표대로 보입니다. 18:18 <@jrand0m> 로드맵에 변경사항 있나요? 18:19 <@jrand0m> 좋아요. 있다면, 언제든 리스트에 메일로 알려주세요. 18:19 <@hezekiah> 네. 18:19 -!- dm [~hifi@anon.iip] 님이 종료하셨습니다 [Ping timeout] 18:19 <@jrand0m> roadmap.xml은 이제 i2p CVS 모듈의 i2p/doc/projectPlan 에 있어요 18:19 -!- dm2 님의 대화명이 dm으로 변경되었습니다 18:20 <@hezekiah> jrand0m: 맞춰보죠 ... 그것도 cathedral에 있죠? 18:20 < nop> 돌아왔어요 18:20 < nop> 죄송 18:20 <@jrand0m> 좋아요, 그건 그걸로(네트워크 프로토 질문은 질문 시간에 다시 다룰 수 있어요). 18:20 <@jrand0m> 제 하위 항목은 끝났어요 18:20 <@jrand0m> hezekiah> 저는 sf 안 써요 18:20 <@thecrypto> 마침 nop이 돌아왔으니 속도 이슈를 빨리 다시 얘기하죠 18:20 <@hezekiah> 좋아요. 18:21 < nop> 어떤 속도 이슈요 18:21 <@thecrypto> Elgamal 검증이 느려요 18:21 < nop> 맞아요 18:21 < nop> 하지만 rsa도 느려요 18:21 <@jrand0m> nop> Applied Crypto에서 RSA 검증이 ElG 서명의 1/100이라고 벤치마크했어요. 18:21 < nop> 흠 18:22 <@hezekiah> RSA와 DSA는 제겐 즉시네요. 18:22 <@hezekiah> ElG는 20초. 18:22 < nop> DSA는 el gamal이에요 18:22 <@jrand0m> 그래서 RSA로 가거나 RouterInfo 구조에 DSA 키를 추가할 수 있어요 18:22 < nop> DSA 18:22 < nop> 전 R 들어간 건 뭐든 싫어요 18:22 < nop> ;) 18:22 * jrand0m ElG를 RSA 대신 쓸 강한 이유는 기억이 안 나네요 18:22 * jrand0m 서운하네 18:22 <@hezekiah> nop: 알려주시겠어요? 왜 RSA는 안 쓰죠? 18:22 <@hezekiah> 자세히요. :) 18:23 < nop> 이런 이유 때문에, 논쟁의 여지는 있지만 18:23 < dm> 누가 시간 나면 iip-dev URL을 메시지로 좀. 18:23 < nop> RSA를 푸는 방법은 prime 인수분해죠 18:23 < dm> iip-dev 리스트요. 18:23 < luckypunk> RSA는 깨졌어요. 18:23 < luckypunk> 실질적으로요. 18:23 < nop> 네, 512비트 RSA는 깨졌죠 18:23 < luckypunk> 아니면 DES였나? 18:23 < luckypunk> 쳇. 18:23 <@hezekiah> DES는 깨졌죠. 18:23 < nop> 아마 DES 얘기하시는 듯 18:23 < co> luckypunk: 특정 크기의 키가 깨진 거예요. 18:23 <@hezekiah> RSA는 아직은 아니고요. 18:24 < nop> 아무튼 18:24 < luckypunk> 하지만 가능하죠. 18:24 < nop> 제 요점으로 돌아가서 18:24 <@hezekiah> 하지만 질문은: 2048이나 4096 RSA 키가 오늘 기준으로 안전한가요? 18:24 <@thecrypto> 잠깐만요 18:24 < nop> 512비트 RSA 키는 사무용 컴퓨터로 깨졌어요 18:24 <@jrand0m> 우리는 2048비트 RSA나 ElG를 보고 있어요 18:24 < nop> hezekiah: 안전하긴 한데, 여기서 중요한 부분이 있어요 18:24 < nop> prime을 인수분해할 수 있으면 18:24 < nop> RSA를 깰 수 있어요 18:24 < nop> 이산 로그를 계산할 수 있으면 RSA와 EL gamal 둘 다 풀 수 있어요 18:24 < nop> 우리는 인수분해에 더 가까워요 18:24 < nop> 이산 로그 계산보다는요 18:24 < nop> 지금 시점에서는 18:24 < luckypunk> 이산 로그가 더 어렵지 않나요? 18:25 <@hezekiah> 빠르게 prime을 인수분해할 수 있으면 RSA를 깨죠. 18:25 <@hezekiah> luckypunk: nop이 그 얘기 하는 거예요. 18:25 < luckypunk> 양자 컴퓨터. 18:25 < luckypunk> 거의 실용 단계예요. 18:25 <@hezekiah> ㅋㅋ 18:25 < nop> 그리고 이산 로그용 공개키의 비트 크기 대비 강도가 RSA 키보다 더 높아요 18:25 < nop> 예컨대 768비트 키는 diffie-hellman 변형에서는 권장되지 않지만, 아직 확실히 깨지진 않았죠 18:25 <@hezekiah> 그래서 결론은 DSA 키를 추가하는 거네요. 18:25 <@thecrypto> nop, 빌 게이츠처럼 말고, 큰 n의 인수분해예요, n = pq 18:25 < nop> 512비트 RSA 키는 깨졌고요 18:25 <@thecrypto> 소수 인수분해는 쉬우니까요 18:25 < nop> 고마워요 18:25 < nop> 미안 18:25 <@jrand0m> hezekiah> 그렇게 보이네요. 18:26 < nop> 모두가 이해하길 바라는 마음에 설명했어요 18:26 < nop> 미안해요 18:26 <@thecrypto> 그냥 약간의 정정이었어요 18:26 <@jrand0m> 좋아요 nop, 괜찮아요, gracias 18:26 <@hezekiah> 오케이. 18:26 < nop> 그러면 DSA 18:26 < nop> 로 가죠 18:26 <@hezekiah> 그럼 DSA 키를 추가하나요? 18:26 < nop> 이것도 diffie-hellman 변형이에요 18:26 <@jrand0m> 좋아요, 그럼 암호 세부는 오프라인에서 계속하죠. 18:26 < nop> 저는 인수분해보단 로그 쪽이 더 좋아요 18:27 < nop> ;) 18:27 <@hezekiah> 그런데, 우리가 계속해야 할 건 뭐가 남았죠? 18:27 < co> dm: URL은 http://news.gmane.org/thread.php?group=gmane.comp.security.invisiblenet.iip.devel 입니다 18:27 <@thecrypto> hezekiah: 마법의 prime 고르기요 18:27 <@hezekiah> 아, 맞다! 18:27 < dm> 고마워요 co, jrand0m의 명세를 찾았어요. 이제 필요한 건 토너 충분한 프린터뿐. 18:27 < nop> 그건 제가 보낼게요 18:27 <@jrand0m> hezekiah> 데이터 구조 명세를 업데이트하고, DSA 관련 정보 추가하고, DSA 키 크기 지정하는 등등이요. 18:27 < nop> 그건 오프라인으로 하죠 18:27 <@jrand0m> ㅋㅋ dm. 18:28 <@hezekiah> 좋아요, 그럼 jrand0m, 더 남은 거 있나요? 18:28 <@jrand0m> 좋아요, 제 건 끝났어요. hezekiah> 당신에게 #3이 있었죠? 18:28 <@hezekiah> 네. 18:28 < dm> 흠. 그림이 안 보여요. 18:28 <@hezekiah> 3.) nop이 안건에 추가하고 싶은 건 뭐든. 18:28 < dm> jrand0m: 'I2P Network Spec Draft 2003.07.23'를 그림 포함으로 받을 수 있는 곳 있나요? 18:29 < co> dm: 네, 저도 그 문제가 있었어요. 18:29 <@jrand0m> dm/co> 첫 번째 리비전의 네트워크 명세(2주 전 zip)를 받으세요, png가 포함돼 있어요. 18:30 <@jrand0m> (CVS에도 있지만, 아직 익명/공개는 아니에요) 18:30 < arj> 언제 되나요? :) 18:30 <@hezekiah> 와! 18:30 <@hezekiah> CVS 이제 빠르네요! 18:31 <@jrand0m> arj> 과대홍보를 피하려고 하고 있어요, 준비되면 공개하되 한동안은 조용히 지낼 거예요. 18:31 < nop> hezekiah: cathedral 거요? 18:31 <@jrand0m> arj> 하지만 지금까지 하는 건 전부 GPL이에요. 18:31 <@hezekiah> nop: 네 18:31 <@hezekiah> ! 18:31 < dm> 2주 전이라면 어떤 zip인가요? 18:31 <@jrand0m> 오, 잘 됐네요, hezekiah? 18:31 < arj> jrand0m: 최신 명세를 읽고 싶었어요 18:31 <@jrand0m> dm> network_spec_*.zip 으로 기억해요 18:31 <@hezekiah> jrand0m: 네! :) 18:31 < dm> 저도요, 그림 포함으로! 18:31 <@thecrypto> iip-dev에 대부분 있어요 18:32 <@jrand0m> arj> http://article.gmane.org/gmane.comp.security.invisiblenet.iip.devel/292 에서 작은 변경 하나 빼고 전부 있어요. 18:32 <@jrand0m> (음, Client Access Layer는 이제 다른 명세에 있어요) 17:33 < arj> 오, 고마워요 17:33 <@jrand0m> client access layer 명세는 http://article.gmane.org/gmane.comp.security.invisiblenet.iip.devel/298 입니다 17:33 < dm> 좋아요, 그리고 그림이 있는 zip 링크는요? 17:33 <@jrand0m> 좋아요. nop 더 있을까요, 아니면 "5) 군중들의 질문/생각 받기"로 갈까요? 18:34 -!- mihi [none@anon.iip] 님이 종료하셨습니다 [Ping timeout] 18:34 * jeremiah 돌아왔고 backlog를 읽었어요 18:34 <@jrand0m> dm> 잠시만요, 찾는 중 18:34 <@jrand0m> http://article.gmane.org/gmane.comp.security.invisiblenet.iip.devel/269 18:35 < dm> 감사 18:35 <@jrand0m> 좋아요, 질문 / 생각 있으신가요? 18:35 -!- arj [anders@anon.iip] 님이 종료하셨습니다 [EOF From client] 18:35 < co> 네. 18:35 <@jrand0m> 천만에요 18:35 < co> 지금 5번 항목인가요? 18:35 * jrand0m co가 질문할 거란 걸 알았죠 :) 18:35 < co> 현재, 클라이언트-라우터 간 통신(아웃고잉)은 암호화되어 있지 않아요. 18:35 <@jrand0m> 네, nop이 느려서요 :) 18:35 <@jrand0m> (일이 있는 사람들이란) 18:36 <@hezekiah> ㅋㅋ 18:36 < co> 믿을 수 있는 친구가 있고, 그 친구의 router를 아웃고잉 메시지에 쓰고 싶다고 합시다. 18:36 <@hezekiah> jrand0m: 알잖아요. 모두가 인생을 포기할 수는 없어요. 18:36 <@jrand0m> co> 대체로 맞아요. 메시지 payload는 암호화되지만, 나머지 I2CP는 아니에요 18:36 < co> 그러면 제가 보낸 메시지가 가로채일 위험이 있지 않나요. 18:37 <@hezekiah> 네. 선을 통해 평문으로 전송되겠죠. 18:37 <@hezekiah> 친구의 router로 ssh 터널이라도 하지 않는 한. 18:37 <@jrand0m> 믿을 수 있는 친구가 있고 그들의 router에 연결하면, 당신이 메시지를 보냈거나 받았다는 건 알 수 있지만 무엇을 보냈는지는 알 수 없어요. 18:37 <@jeremiah> 메시지는 여전히 공개키 암호화를 쓰지 않나요? 18:37 <@hezekiah> 앗. 18:37 <@hezekiah> 제 실수. 18:37 < dm> 전 I2P를 이용해서 9to5(윈도우 관리, VB 툴) 일이 저를 좀비로 만드는 걸 막기 위한 새로운 공부를 하려 합니다. 18:37 <@jrand0m> TCP listener만이 아니라 SSL listener 지원을 추가하는 건 괜찮아요. 18:37 <@hezekiah> 클라이언트 간 종단간 암호화를 깜빡했네요. 18:37 < co> 가정은 제가 로컬의 신뢰할 수 있는 router를 돌린다는 건데, 위에서 말했듯 그걸 원치 않을 수도 있죠. 메시지가 저에게 연결될 수 있으니까요. 18:37 <@jrand0m> 네 jeremiah, 하지만 그건 payload에만 해당해요 18:37 <@jrand0m> 헤헷 dm 18:37 -!- mihi [none@anon.iip] 님이 #iip-dev에 입장하셨습니다 18:38 <@jrand0m> 흠. 18:38 <@hezekiah> jrand0m: 나중에 클라이언트-라우터 통신 암호화 지원을 추가하는 건 어때요? 18:38 <@jrand0m> 항상 로컬의 신뢰할 수 있는 router를 두는 게 좋아요. 거기서 다른 로컬이 아닌 신뢰할 수 있는 router에 연결하는 것도 가능하고요. 18:39 < co> 맞지만, hezekiah의 제안을 저도 지지합니다. 18:39 <@jrand0m> hezekiah> 나중에 추가하는 건 괜찮아요(여기서 나중이란: t=0...releaseDate ;) 18:40 <@jrand0m> I2CP에 DH+AES 지원을 추가하는 것도 전혀 문제 없어요 18:40 < nop> 좋아요 18:40 <@jrand0m> 사실 그런 기능은 router별로 추가할 수도 있어요 18:41 < nop> jrand0m: 그리고 polymorphic 키 로테이션과 chaffe traffic(더미 트래픽)도 필요하다고 봐요 18:41 < nop> 그건 아마 다음 회의에서 보겠죠 18:41 < nop> 그냥 제 코멘트예요 18:41 < nop> 키 세트를 이용해서요 18:41 <@jrand0m> 네, router-router 통신을 다룰 때요. 18:41 <@jrand0m> (1-2주 후) 18:41 < co> nop: 지금 명세에는 chaffe 트래픽이 안 보이는데, 추가하는 게 좋겠어요. 18:42 <@jrand0m> chaffe는 있어요, router와 tunnel 참여자들이 자신과 이웃을 테스트하는 식으로요. 18:42 -!- arj [~anders@anon.iip] 님이 #iip-dev에 입장하셨습니다 18:42 <@jrand0m> 게다가 DHT 요청은 payload 메시지 관점에서 chaffe예요 18:42 < nop> jrand0m: 트래픽 분석 회피와 알려진 평문을 주지 않는 쪽도 좀 파볼게요 18:42 <@jrand0m> 그리고 개별 전송 방식마다 자체 chaffe 스타일이 있을 거예요 (예: http transport는 주기적으로 구글에서 "cute puppy dogs"를 조회한다든가) 18:43 < nop> 그런 chaffe도 좋지만, 암호화된 chaffe도 말하는 거예요 18:43 < nop> 이건 세션 키를 회전시키는 데 도움이 되죠 18:43 < nop> 그리고 노드가 비활성일 때도 바쁘게 유지하고요 18:43 < dm> 더 현실적인 chaffe로는 하드코어 아동 포르..로 바꾸면 어떨지 18:43 <@jrand0m> 좋아요. 18:43 < dm> 농담이에요! 18:43 <@hezekiah> dm: 다행이네요. 아니었으면 !thwack 했을 듯. 18:43 <@hezekiah> :) 18:44 <@jrand0m> DHT(링크 암호화)와 테스트 메시지(free route mix, 즉 onion/garlic)는 알려진 평문 문제가 없을 거예요 18:44 < nop> 새 노드일수록 시작할 때 트래픽이 적으니까요 18:44 <@jrand0m> 그리고 constant bitrate 전송 지원도 있을 거예요 18:44 < nop> garlic 최고 18:44 < nop> :) 18:44 < nop> jrand0m: DC-net 스타일 :) 18:44 * jrand0m 이 회의 끝나고 마늘 듬뿍 파스타를 만들려는 중 18:45 < nop> jrand0m: garlic 라우팅 얘기였어요 18:45 <@hezekiah> ㅋㅋ! 18:45 <@jrand0m> 알아요 ;) 18:45 < nop> jrand0m: 어쨌든, 고정 비트레이트는 블록 암호화를 강제해서 할 수 있죠, AES가 128비트 블록을 생성하니까요 18:45 < nop> ;) 18:45 < nop> 그래서 모든 데이터를 메시지당 16바이트로 패딩하면 돼요 18:45 <@jrand0m> co> 제 이메일 답변이 의미가 있었나요? 18:47 <@jrand0m> *핑* 18:47 <@hezekiah> *퐁* 18:47 <@thecrypto> *퐁 18:47 <@thecrypto> * 18:47 <@jrand0m> 다른 질문 있나요, 아니면 제 iproxy가 끊긴 건가요? 18:47 <@jrand0m> 헤헷 좋아요 18:47 <@hezekiah> thecrypto: 조각난 패킷! 18:47 <@hezekiah> ㅋㅋ 18:48 <@thecrypto> 끝부분을 놓쳤어요 18:48 <@thecrypto> 여기 MTU가 더 작네요 :) 18:48 <@hezekiah> jrand0m: 음, 전 질문 없습니다. 18:48 < co> jrand0m: 네, 답변 이해됐습니다. 18:48 < co> 더 질문은 없어요. 18:48 < dm> 내일 명세 읽으면서 질문 만들게요. 18:49 <@jrand0m> 좋아요, 나중에 더 있길 :) 18:49 <@jrand0m> 좋아요 dm 18:49 < dm> 처음엔 좋아 보일 수도요. 18:49 < dm> 그럼, 전 이만. 행운을 빕니다! 18:49 -!- dm [~hifi@anon.iip] 님이 종료하셨습니다 [] 18:50 <@jrand0m> 일정상 2주짜리 큰 동료 검토 기간이 남아 있어요, 하지만 그 전 리뷰도 감사해요(아직 모든 세부사항이 들어가진 않았더라도) 18:51 <@jrand0m> 좋아요. 다른 질문 없으면, 102분짜리 회의로 #52를 마무리할까요? 18:52 <@thecrypto> #51 18:52 <@hezekiah> 어, 전 1:57로 읽었어요. 18:52 <@hezekiah> 하아. 18:52 <@hezekiah> 바보 같네요 18:52 <@hezekiah> 절 무시하세요. 18:52 <@hezekiah> 질문은 없고 ... 18:52 <@hezekiah> 질문! 18:52 * jrand0m 더하기는 영... 18:52 <@hezekiah> 지금 말씀하시거나 다음 화요일까지 평화를! 18:52 <@hezekiah> 한 번! 18:53 <@hezekiah> ... 두 번! 18:53 <@thecrypto> 단정한 셔츠 입은 저 분께 낙찰 18:53 <@hezekiah> 종료! 18:53 * jrand0m 부엌으로 가서 오래 미룬 저녁을 만든다 18:53 <@jrand0m> gracias srs y srtas 18:53 <@hezekiah> 모두 안녕히! 18:53 <@jeremiah> 떠나기 전에 소스 좀 체크아웃해야겠네요 18:53 <@hezekiah> 다음 화요일에 봬요! --- 로그 종료 Tue Jul 29 18:53:55 2003