- From: yslee <yslee@pentasecurity.com>
- Date: Mon, 12 Aug 2013 08:18:09 +0900
- To: Sangwhan Moon <sangwhan@iki.fi>
- CC: Wonsuk Lee <wonsuk73@gmail.com>, HTML KIG <public-html-ig-ko@w3.org>
- Message-ID: <52081BB1.6000500@pentasecurity.com>
»ó¼¼ÇÑ ¼³¸í °¨»çÇÕ´Ï´Ù.^^ »óȯ´Ô ¼³¸íÀ» Á¾ÇÕÇÏÀÚ¸é ÇöÀç »óÅ·μ´Â ±¸Çö¿¡ ¹«¸®°¡ ÀÖ´Ù°í º¸¿©Áö´Â±º¿ä. ½ÇÁ¦ HTML5¿¡¼ ¾î¶»°Ô ÇÏ°í ÀÖ´ÂÁö ¾Ë¾Æ¾ß °Ú´Ù´Â »ý°¢ÀÌ ´õ¿í µå³×¿ä. Âü°í·Î entropy È®º¸¸¦ À§ÇÑ °ªµéÀº ¿¹¸¦ µç °ÍÀÔ´Ï´Ù. ¹Ýµå½Ã ±×°ÍµéÀ̾î¾ß ÇÏ´Â °Ç ¾Æ´Ï¶ó´Â °ÅÁÒ. ±×¸®°í RTOS¸¦ »ç¿ëÇϴ ȯ°æ(Áï, embedded)´Â PRNG°¡ ¾Æ´Ï¶ó TRNG ±¸ÇöÀÌ °¡ ´ÉÇÕ´Ï´Ù¸¸, ¹®Á¦´Â web¿¡¼ ¾î¶»°Ô ±×·± °ªµéÀ» »ç¿ëÇÒ ¼ö Àִ°¡ ÇÏ´Â °ÍÀÔ ´Ï´Ù. »óȯ´Ô ¸»¾¸´ë·Î¶ó¸é ¿ì¸®°¡ ¼ø¼öÇÏ°Ô ±¸ÇöÇϱâ´Â ¾î·Æ°í, Á¦°øµÇ´Â °¢Á¾ API ¸¦ »ç¿ëÇØ¾ß ÇÑ´Ù´Â Á¦¾àÀÌ Àְڳ׿ä. (ƯÈ÷ ÀÎÁõ-¾ÏÈ£¸ðµâ ÀÎÁõ by ±¹°¡Á¤º¸¿ø-Àº ¸ÁÇß±º¿ä. ¤Ð¤Ð) ¶ÇÇÑ »ç¿ëÀÚÀÇ ÀÔ·ÂÀ» ¹Þ´Â ºÎºÐµµ, »ç¿ëÀÚ ÀԷ¾øÀÌ µ¥ÀÌÅ͸¦ ¾ÏÈ£ÈÇØ¾ß ÇÏ ´Â °æ¿ì »ç¿ëÇÒ ¼ö ¾ø´Ù´Â Á¦¾àÀÌ »ý°Ü¼ ÁÁÀº ¹æ¾ÈÀº ¾Æ´Ñ °Í °°¾Æ¿ä. °¨»çÇÕ´Ï´Ù. ³¡. -- Æ柽ÃÅ¥¸®Æ¼½Ã½ºÅÛ(ÁÖ) *ÀÌ À¯ ½Ä* ¾ÏÈ£½Ã½ºÅÛ°³¹ß ºÎ / ºÎ¼Àå, Division Manager You-sik Lee Email : yslee@pentasecurity.com / Tel. 02.3775.7771 Penta Security Systems <http://www.pentasecurity.com> Æ柽ÃÅ¥¸®Æ¼½Ã½ºÅÛ(ÁÖ) ¼¿ï½Ã ¿µµîÆ÷±¸ ¿©Àǵµµ¿ 25-11 ÇÑÁøÇØ¿îºôµù 20Ãþ (150-949) ´ëÇ¥ÀüÈ 02.780.7728 Æѽº 02.786.5281 | www.pentasecurity.com Penta Security Systems <http://www.pentasecurity.com> 13. 8. 9. ¿ÀÈÄ 9:07, Sangwhan Moon ¾´ ±Û: > 2013/8/9 yslee <yslee@pentasecurity.com <mailto:yslee@pentasecurity.com>> > > ¾È ³çÇϼ¼¿ä. > Áö³ ¹ø Çà»ç¶§ óÀ½ ¸¸³ª¼ µÇÁöµµ ¾Ê´Â ÀÌ·± Àú·± Áú¹®µéÀ» Çß¾ú´Â > µ¥.. Ȥ > ½Ã ±â¾ïÇÏ½Ç Áö ¸ð¸£°Ú½À´Ï´Ù. > À̹ø ±³À° ¶§ session I, II °¡ ÁøÇàµÇÁö ¾Ê¾Æ ¸Å¿ì ¾Æ½¬¿ü½À´Ï´Ù. > > Àú´Â º¸¾È °ü·Ã ¾÷ü¿¡¼ °³¹ßÀ» ÇÏ°í Àִµ¥¿ä. > À¥¿¡ ´ëÇÑ ÀÌÇØ°¡ ª¾Æ¼ Áú¹®ÀÌ ÀÌ»óÇÏ´õ¶óµµ »ì¦ ÀÌÇØÇØ ÁÖ½Ã±æ ºÎ > Źµå¸³´Ï´Ù. > > HTML 5¿¡ º¸¸é CryptoAPI °¡ Á¦°øµÇ´Âµ¥¿ä. > Á¦°¡ ±Ã±ÝÇÑ °ÍÀº ³¼ö ºÎºÐÀÔ´Ï´Ù. > ³¼ö´Â º¸Åë Block cipher¿¡¼ key¸¦ ¸¸µé°Å³ª, °ø°³Å° ƯÈ÷ RSA¿¡¼ short > message attackÀ» ¹æÁöÇϱâ À§ÇÑ de facto standardÀÎ RSA-OAEP(ÇöÀç´Â > RSAES)¿¡¼ »ç¿ëµÇ±â ¶§¹®¿¡ Çʼö¶ó°í ÇÒ ¼ö ÀÖ½À´Ï´Ù. > > ¾Æ½Ã°ÚÁö¸¸, ³¼ö´Â entropy È®º¸¸¦ À§ÇÏ¿© ³¼ö¸¦ »ý¼ºÇÏ´Â seed(block > cipherÀÇ ÇÑ Á¾·ùÀÎ SEED°¡ ¾Æ´Ï¶ó ³¼ö¸¦ »ý¼ºÇϱâ À§ÇÑ ¾¾¾Ñ °ªÀ» ¸»ÇÕ´Ï > ´Ù.)°¡ ¸Å¿ì Áß¿äÇÕ´Ï´Ù. > > ÇöÀç ¿ì¸®³ª¶ó¿¡¼ ÀÎÁ¤Çϴ ǥÁØÀº ISO/IEC 18033-2:2006ÀÔ´Ï´Ù.(±âÁ¸¿¡´Â > "FIPS PUB 186-2 Addendix 3¿¡ ¸í½ÃµÈ ³¼ö¹ß»ý±âÀÇ º¯Çü ¸ðµ¨ Áß SHA- > 1À» ÀÌ > ¿ëÇÑ GÇÔ¼ö »ç¿ë ¸ðµ¨"À̾ú½À´Ï´Ù.) > > ±¹Á¤¿ø¿¡¼´Â ÃÖ¼Ò 256ÀÇ entropy¸¦ È®º¸Çϵµ·Ï ÇÏ°í Àִµ¥, À̸¦ À§Çؼ > CPU Clock, PID, TID, memory address, mouse pointer À§Ä¡ µîÀÇ °ªµé > À» °¡Á® > ¿É´Ï´Ù. > > Á¦ Áú¹®ÀÇ ¿äÁö´Â HTML 5¿¡¼ Àú·± systemÀÇ °ªµéÀ» °¡Á®¿Ã ¼ö ÀÖ´À³Ä > ´Â °ÍÀÔ > ´Ï´Ù. > °¡Á®¿Ã ¼ö ¾ø´Ù¸é ¿ì¸®°¡ "³¼ö"¶ó°í ºÎ¸¦ ¼ö ÀÖ´Â °ÍµéÀ» »ý¼ºÇϱ⠾î·Æ±â > ¶§¹®ÀÔ´Ï´Ù. > > ±âÁ¸¿¡ Javascript µîÀ¸·Î ¾ÏÈ£ ¾Ë°í¸®ÁòÀ» ±¸ÇöÇÏ°í ½Í¾îµµ ÇÒ ¼ö ¾ø > ¾ú´ø ÀÌ > À¯°¡ ³¼ö¸¦ Á¦´ë·Î ¸¸µé ¼ö ¾ø¾î¼¿´½À´Ï´Ù. > > HTML 5¿¡¼ ÀÌ ¹®Á¦¸¦ ¾î¶»°Ô ÇØ°áÇÏ°í ÀÖ´ÂÁö ±Ã±ÝÇÕ´Ï´Ù. > ¾Æ½Ã´Â ºÐµé ÀÖÀ¸½Ã¸é ´äº¯ ºÎŹµå¸±²²¿ä. > > > ¾Ïȣȿ¡ ´ëÇؼ Àü¹®°¡´Â ¾Æ´ÑÁö¶ó ÇãÁ¢ÇÑ ´äº¯ÀÌ µÉ ¼ö ÀÖ½À´Ï´Ù¸¸, ¿äºÎ > ÅÍ ¸»¾¸µå¸®¸é ¼ø¼ö > javascript·Î´Â ¾ð±ÞÇϽŠÁ¢±Ù ¹æ¹ý ÀÚü¸¦ ±×´ë·Î ±¸ÇöÇÏ´Â°Ç ºÒ°¡´ÉÇÏ´Ù > °í º¾´Ï´Ù. > > ´Ù¸¸, °¡Àå ±ÙÁ¢ÇÑ°ÍÀÌ window.crypto.getRandomValues°¡ µÇ´Âµ¥, ÀÌ°ÍÀÇ > ÇÏÀ§ ´Ü¿¡ ÀÖ¾î¼ > ±¸Çö ¹æ¹ý ÀÚü´Â ºê¶ó¿ìÀú ±×¸®°í ȯ°æ¿¡ µû¶ó ´Þ¶óÁý´Ï´Ù. ¾ð±ÞÇϽŠ¹æ¹ý > À» true multi process > + multi threading ȯ°æ¿¡¼ ±¸ÇöÇÒ °æ¿ì ÇØ´ç ¹æ¹ý°ú À¯»çÇÑ ¶Ç´Â Ãß°¡Àû > ÀÎ ¿ä¼ÒµéÀÌ Æ÷Ç﵃ °ÍÀ¸·Î > »ý°¢µË´Ï´Ù. ¹Ý´ë·Î RTOS¿Í °°Àº cooperative multi tasking ȯ°æÀÇ °æ¿ì¿¡ > ´Â ´Ù¸£°Ô ±¸ÇöÀ» ÇØ¾ß > ÇÒ°ÍÀ¸·Î »ý°¢µË´Ï´Ù. > > ÀÌÀ¯ÀÎÁôÀº, cooperative multi tasking ȯ°æÀÇ °æ¿ì¿¡´Â PID°¡ ¾ø°í, TID > µµ ¾ø°í, memory > addressÀÇ °æ¿ì ´ëºÎºÐ Á¤ÇØÁø Àý´ë ÁÖ¼Ò¿¡ ¸ÅÇÎÀÌ µÇ´Â Áö¶ó ÇØ´ç ¿ä¼Òµé > ÀÇ º¯µ¿ ¿©Áö°¡ ±²ÀåÈ÷ > Àû±â ¶§¹®¿¡ getRandomValues() ÀÇ ±¸Çö ´Ü¿¡¼ ´Ù¸¥ ¹æ¹ýÀ¸·Î Á¢±ÙÀ» ÇØ¾ß > ÇÒ °ÍÀ¸·Î »ý°¢µË´Ï´Ù. > ±âº»ÀûÀ¸·Î´Â ÇöÀç »óȲ¿¡¼´Â getRandomValues()¸¦ »ç¿ëÇÏ°í ³ª¸ÓÁö´Â ºê > ¶ó¿ìÀú¿¡ ¸Ã±â¼Å¾ß ÇÕ´Ï´Ù. > > Ãß°¡ÀûÀ¸·Î Math.random()ÀÇ °æ¿ì ´ë´Ù¼ö ºê¶ó¿ìÀú¿¡¼ °¡Àå ¼Óµµ°¡ ºü¸¥ > PRNG¸¦ »ç¿ëÇÏ´Â °æ¿ì°¡ > ´ëºÎºÐÀ̹ǷΠ¾ÏÈ£¿ë entropy·Î »ç¿ëÇÏ´Â°Ç ´ë´ÜÈ÷ À§ÇèÇÕ´Ï´Ù. ¾Æ¿ï·¯ ¾Ï > È£È¿Í ¹«°üÇϸ鼵µ ³¼ö¼ºÀÌ > ³ô¾Æ¾ß¸¸ ÇÏ´Â ÇÁ·Î±×·¥À» ±¸ÇöÇϴµ¥¿¡µµ »ç¿ëÇϱⰡ ¾î·Æ½À´Ï´Ù. ÀÌ°Í ¶§ > ¹®¿¡ ÀÌÀü¿¡ [1] mersenne > twister¸¦ javascript·Î ±¸ÇöÇÑÀûÀÌ ÀÖ½À´Ï´Ù. ´Ù¸¸ MTµµ ¾ÏȣȿëÀ¸·Î´Â > »ç¿ëÇϱâ´Â ¾î·Á¿ï°ÍÀ¸·Î > »ý°¢ÇÕ´Ï´Ù. > > ¼ø¼öÇÑ ¿©´ãÀÌÁö¸¸ CPU clockÀ̶ó°í ¸»¾¸ÇÏ½Å°Ç clock speed°¡ ¾Æ´Ï¶ó tick > count°ÚÁö¿ä? clock > speed¸¦ entropy¿ëÀ¸·Î »ç¿ëÇÏ°í ÀÖ´Ù¸é ÃÖ±Ù »óȲ¿¡¼´Â ³¼ö¼ºÀÌ Àû´Ù°í > º¾´Ï´Ù¸¸... (tick count¶Ç´Â > ÇÁ·Î¼¼½º ½ÃÀÛ ½ÃÁ¡ºÎÅÍÀÇ Á¤¹ÐÇÑ ´ÜÀ§ÀÇ monotonic timer¸¦ ÀÌ¿ëÇϴ°Ŷó > ¸é ±¦Âú°ÚÁö¸¸¿ä) > > (ƯÈ÷ CPU Á¾·ù°¡ ±×´Ú ¸¹Áö ¾ÊÀº ¸ð¹ÙÀÏÀ̳ª Mac ȯ°æ¿¡¼´Â ´õ¿í ¹®Á¦°¡ > µÉ °ÍÀ¸·Î »ý°¢ÇÕ´Ï´Ù¸¸..) > > ¸¸¾à¿¡ javascript·Î ³¼ö¼ºÀÌ ³ôÀº Á¤º¸¸¦ °¡Á®¿À°í ½Í´Ù¸é 1) »ç¿ëÀÚ ÀÔ > ·ÂÀ» À¯µµÇؼ ±× ÀԷ½à > ¹ß»ýÇÏ´Â key/mouse/touch/pointer events 2) deviceorientation events 3) > sensor apis > ±×¸®°í 4) webrtcÀÇ getusermedia ¸¦ ÀÌ¿ëÇؼ Ä«¸Þ¶ó¿¡¼ µé¾î¿À´Â µ¥ÀÌÅÍ > µîÀ» Àû´ç¤¾»ç¿ëÇÏ´Â > ¹æ¹ýÀÌ ÀÖÀ»°ÍÀ¸·Î »ý°¢µË´Ï´Ù. (geolocationµµ »ç¿ëÀÌ °¡´ÉÇÒ °Í °°±ä ÇÕ > ´Ï´Ù¸¸, ±âº»ÀûÀ¸·Î > triangulation ÀÌ µÈ µ¥ÀÌÅ͸¦ ¹Þ´ÂÁö¶ó ¿øÇÏ´Â ¸¸Å ³¼ö¼ºÀÌ ³ôÀ»Áö´Â Àß > ¸ð¸£°Ú½À´Ï´Ù.) > > °¨»çÇÕ´Ï´Ù. > ¹®»óȯ ¹è»ó > > [1] https://github.com/cynthia/mt.js
Received on Sunday, 11 August 2013 23:18:34 UTC