Documente Academic
Documente Profesional
Documente Cultură
15ȸ°ÁÂÀÔ´Ï´Ù.
À̹ø½Ã°£¿¡´Â À‾´Ð½º ÇØÅ ÇÁαץ ¸î°¡Áö À̾߱â¿Í ¹èÄ¡º¸Ãæ
±×¸®°í HWP ¾ÏÈ£ Çص¶¿¡ °üÇÑ ¸ðµç »çÇ×À» ¼Ò½º °ø°³Çϸç À̾߱â ÇÏ°Ú½À´Ï´Ù.
¾ÏÈ£È ±â¹ý
¾ÏÈ£ÀÛ¼º ½Ã½ºÅÛÀº ¸Þ½ÃÁö¸¦ ¾î¶°ÇÑ ºÐ¼®¿¡µµ °ßµ®³¾ ¼ö ÀÖ´Â ¾ÏÈ£¹®À¸Î ¹Ù
²ÙµµÏ ¼³°èÇÏ´Â °ÍÀÌ´Ù. ¿©±â¿¡´Â ÄÚµå ½Ã½ºÅÛ ¶Ç´Â ¾ÏȣȽýºÅÛ ¹æ¹ýÀ»
ÀÌ¿ëÇÏ°í ÀÖ´Ù. ÄÚµå½Ã½ºÅÛÀº ÀϹÝÀû ¹®ÀÚ, ´Ü¾î, ¹®Àå µîÀ» ¸ð¸£½º ºÎÈ£¿Í
°°Àº Æ‾Á¤ ±âȣΠǥ½ÃÇÏ´Â ¹æ¹ýÀÌ´Ù. ÀÌ¿¡ ¹ÝÇØ ¾ÏÈ£½Ã½ºÅÛÀº ¾Ë°í¸®Áò°ú
Å°Î ±¸¼ºµÇ¾î ÀÖÀ¸¸ç, Å°´Â ¾Ë°í¸®ÁòÀÇ ¿øÄ¢¿¡ µû¶ó ÀϹݹ®ÀåÀÌ Â¥¿©Áø ¹®
Àå ±âÈ£ ¶Ç´Â ¼ýÀÚÀÇ ¼øÂ÷Àû Ç¥ÀÌ´Ù. ¾ÏÈ£È ¾Ë°í¸®ÁòÀº °£´ÜÇÏ°Ô ÀϹݹ®Àå
ÀÇ °¢ ¹®ÀÚ¸¦ ¾ËÆĺª ¼ø¼¿¡ µû¸¥ ¼ýÀÚΠǥ½ÃÇÏ°í ¾ÏÈ£ÆÇ(Key te.t)¿¡¼ÀÇ
¾ËÆĺª ¹®ÀÚ°¡ À§Ä¡ÇÑ ¹øÈ£¸¦ ÀÐÀº ´ÙÀ½ ÀÌ µÎ°³¸¦ ÇÕÇÑ °ÍÀÌ °¡¹ý±ºÀÌ´Ù.
¾ÏÈ£Çص¶Àº ¸Þ½ÃÁö¸¦ ¼Û½ÅÇÏ´Â »ç¶÷°ú ¼ö½ÅÇÏ´Â »ç¶÷ÀÌ µ¿½Ã¿¡
°°Àº ¾ÏÈ£ÆÇÀ» °¡Áö°í Àֱ⠶§¹®¿¡ ¼ö½ÅµÈ ¾ÏÈ£¹®À» ¾ÏÈ£ÀÛ¼º ¼ø¼ÀÇ ¿ªÀ¸Î
ã¾Æ°¡¸é ÀϹݹ®ÀåÀ¸Î Çص¶ÇÒ ¼ö ÀÖ´Ù. ¿¹¸¦µé¾î "ÂøúÁöÁ¡Àº B"¶ó´Â ¶æÀÇ
¿µ¹®(Meet at landing zone(LZ) bravo)À» ¾ÏÈ£ÈÇϸé UGJUGBNECXIXT°¡ µÈ´Ù.
ÀÌ°ÍÀº ÀϹݹ®ÀåÀÇ ¿µ¹®À» ¾ËÆĺª ¼øÀ¸Î ¹è¿ÇÏ°í 5ÀÚ¸®ÀÇ ¹Ýº¹µÇ´Â ¼ýÀÚ82
516 82516 825¿Í ÇÕÇÑ ¼ýÀÚ¸¦ Ç¥½ÃÇÑ ÈÄ(À̶§ µÎ ¼ýÀÚÀÇ ÇÕÀÌ 26À» ³Ñ´Â °æ
¿ì 26À» »©°í °è»êÇÑ´Ù. ¿¹¸¦µé¾î 30Àº 26À» »©¸é 4°¡ µÇ°í ÀÌ°ÍÀº ¿µ¹® ¾Ë
ÆĺªÀ¸Î Ç¥±âÇϸé D°¡ µÇ´Â °ÍÀÌ´Ù) ÀÌ ¼ýÀÚ¸¦ ¿µ¹® ¾ËÆĺªÀ¸Î Ç¥±âÇÑ °Í
ÀÌ ¾ÏÈ£¹®ÀÌ µÇ°í ÀÌ °úÁ¤À» ¿ªÀ¸Î ½ÃÇàÇÏ¸é ¾ÏÈ£¸¦ Çص¶ÇÒ ¼ö ÀÖ´Ù.
ÄÄÇ»ÅÍ ³×Æ®¿öÅ©ÀÇ º¸¾ÈÀº ºíÏ ¾ÏÈ£¿Í ½ºÆ®¸² ¾ÏÈ£¸¦ »ç¿ëÇÏ°í ÀÖ´Ù. ºíÏ
¾ÏÈ£´Â ÀϹݹ®ÀåÀ» ¾ÏÈ£¹®ÀåÀ¸Î ¸¸µé±â À§ÇØ Å° ÅؽºÆ®ÀÇ ºíÏ°ú ´ëÀÀÇÒ ¼ö
ÀÖµµÏ ÀÏÁ¤ÇÑ Å©±âÀÇ ºíÏÀ¸Î ºÐÇÒÇÑ´Ù. ÇÕ¸®Àû º¸¾ÈÀ» À§ÇØ ºíÏÀÇ Å©±â
¸¦ ´Ù¼Ò Å©°Ô Àâ´Â´Ù. ÀüÇüÀûÀ¸Î ºíÏÀÇ Å©±â´Â 64ºñÆ®ÀÌ´Ù. ½ºÆ®¸² ¾ÏÈ£´Â
Å° ÅؽºÆ® ¹®ÀڿκÎÅÍ °¢°¢ÀÇ ÀϹݹ®Àå ¿ä¼Ò¸¦ ÇϳªÎ Á¶ÇÕÇÏ¿© »ý¼ºµÈ ÀÏ
¹Ý¹®Àå¿¡¼ ¿î¿ëµÈ´Ù. ½ºÆ®¸² ¾ÏÈ£´Â Åë½Å ¾ÖÇø®ÄÉÀ̼ǿ¡ ¸Å¿ì ÀûÇÕÇÑ °ÍÀ¸
Î ÀϹݹ®Àå¿¡´Ù ºñ¹Ð¾ÏÈ£ ¾Ë°í¸®ÁòÀ» ´õÇÑ Å° ÅؽºÆ® ¹®ÀÚ¿À» ¸¸µé±â À§ÇØ
Åë»óÀûÀ¸Î ºíÏ ¾Ïȣȹæ¹ýÀ» »ç¿ëÇÑ´Ù. ³×Æ®¿öÅ ¾ÖÇø®ÄÉÀÌ¼Ç ÀÌÁ¡Àº Ä¿
¹Â´ÏÄÉÀ̼ÇÀÇ ÆÄÀÌÇÁ ¶óÀο¡ ³ªÅ¸³ª´Â ¾ÏÈ£ÈÀÇ °¢ ¿ä¼Ò´Â ¸ðµç ¼±Çà¿ä¼Ò¿¡
´ÞÁ ÀÖ´Ù´Â °ÍÀÌ´Ù.
µ¥ÀÌÅÍ ¾ÏÈ£È Ç¥ÁØ ¾Ë°í¸®Áò(DES)Àº Áö³ 77³â ºñ¹ÐÎ Ãë±ÞµÇÁö ¾ÊÀº Á¤º¸
ÀÇ Àü¼Û°ú ÀúÀå¿¡ ´ëÇÑ ¹Ì ¿¬¹æ Á¤º¸Ã³¸®Ç¥ÁØ(Federal Information ProcessS
tandard:FIPS)À¸Î ÀÎÁ¤¹Þ¾Ò´Ù. DES ¾Ë°í¸®ÁòÀº ANSI X. 3 106 1983À¸ÎÁö
³ 83³â¿¡ ¹Ì±¹Ç¥Áرⱸ(ANSI)¿¡ ÀÇÇØ °ø½ÄÀûÀ¸Î Àΰ¡¹Þ¾Ò´Ù.
±âº»ÀûÀÎ ¾ÏÈ£È ¿£ÁøÀº 64ºñÆ®ÀÇ ÀϹݹ®ÀåÀ» 64ºñÆ® ºíÏÀÇ ¾ÏÈ£¹®ÀåÀ¸Î
º‾Çü½ÃÅ°´Â 56ºñÆ® Å°¸¦ »ç¿ëÇÏ´Â ºíÏ ¾ÏȣΠ¿î¿ëµÈ´Ù. °¢°¢ÀÇ 64ºñÆ® ÀÏ
¹Ý¹®ÀåÀÇ ºíÏÀº Àý¹ÝÀÎ 32ºñƮΠ³ª´©¾îÁö°í °á°ú°¡ Àç°áÇյDZâ±îÁö ¾à 16
°³ÀÇ °úÁ¤À» °ÅÄ£´Ù. ÀÌ°ÍÀ» ECB(Electronic Code Book)¸ðµå¶ó°í ÇÑ´Ù. ÀÌ
¸ðµå¸¦ »ç¿ëÇÏ¿© ¾ÏÈ£¹®ÀåÀÇ °¢ ºíÏÀº ´Ù¸¥ ¸ðµç ¾ÏÈ£¹®Àå°ú ¿ÏÀüÈ÷ µ¶¸³µÇ
¾î ħÀÔÀÇ À§Çù¿¡¼ ¹þ¾î³‾ ¼ö ÀÖ´Ù. ¾ÏÈ£ ºíÏ ¿¬°á(Cipher Block Chainin
g:CBC)¸ðµå¿¡¼´Â ¸¶Áö¸ ¾ÏÈ£ÈÀÛ¾÷¿¡ ÀÇÇÑ ¾ÏÈ£¹®ÀåÀº ´ÙÀ½ ºíÏÀÇ ºñ¾ÏÈ£
ÈµÈ ÀϹݹ®Àå°ú ¿¬°áµÈ´Ù. ÀÌ‾ÇÑ ¹æ¹ýÀ¸Î ¾ÏÈ£¹®ÀåÀÇ °¢ ºíÏÀº ±×°Í¿¡
¼±ÇàµÇ´Â ¸ðµç ¹®Àå°ú ¿¬°áµÈ´Ù.
64ºñÆ®ÀÇ ÀϹݹ®Àå ºíÏÀÌ ÀÔ嵂 56ºñÆ®ÀÇ Å°°¡ ¹«ÀÛÀ§Î ¼±ÅõǸé 7¡¿10
ÀÇ 16½Â¿¡ ÇØ´çÇÏ´Â Á¶ÇÕ¿¡ ÀÇÇØ ¸¸µé¾îÁø DES¹æ¾î´Â ÁÖ¸Ô±¸±¸½Ä ³¢¿ö¸ÂÃß±â
¹æ¹ý¿¡ ÀÇÇÑ Ä§ÀÔÀ» ÃæºÐÈ÷ ¸À» ¼ö ÀÖ´Ù.
DES´Â ´ëĪÀû ¾ÏÈ£½Ã½ºÅÛÀ¸Î ¾ËÁÁ® ÀÖ´Ù. DES º¸¾È½Ã½ºÅÛÀÇ ±Ùº»Àû ´ÜÁ¡Àº
¸Þ½ÃÁö¸¦ ¼Û½ÅÇÏ´Â ÂÊ°ú ¼ö½ÅÇÏ´Â ÂÊ ¸ðµÎ°¡ Å°¸¦ °¡Áö°í ÀÖ¾î¾ß Çϸç, ÀÌ
Å°´Â ÀÚÁÖ º‾°æµÇ¾î¾ß ÇÏ°í Å°ÀÇ ¹èÆ÷°¡ ¾ÈÀüÇÏ°Ô º¸È£µÇ¾î¾ß ÇÑ´Ù. ÀÌ¿Í´Â
´ëÁ¶ÀûÀ¸Î ºñ´ëĪ ¾ÏÈ£½Ã½ºÅÛÀº ¾ÏÈ£È¿Í ¾ÏÈ£Çص¶À» ÇÏ´Â µ¥ ÀÖ¾î °ø¿ë Å°
¿Í °³ÀÎ Å°¸¦ ±âº»À¸Î ÇÑ´Ù. ¸¸¾à A°¡ B¿¡°Ô ¸Þ½ÃÁö¸¦ ¼Û½ÅÇÏÁ¸é A´Â ¹Ýµå
½Ã BÀÇ °ø¿ë Å°¸¦ ¾Ë¾Æ¾ß ÇÏ°í ±× °ø¿ë Å°¸¦ ÀÌ¿ëÇÏ¿© ¼Û½Å ¸Þ½ÃÁö¸¦ ¾ÏÈ£È
ÇÑ´Ù. ÀÌ ¸Þ½ÃÁö´Â ¿ÀÎÁö BÀÇ °³ÀÎ Å°¸¦ ÀÌ¿ëÇÏ¿© B¸¸ ÀÐÀ» ¼ö ÀÖ´Ù. °¡Àå
º¸ÆíÀûÀ¸Î »ç¿ëµÇ°í ÀÖ´Â ºñ´ëĪ ¾Ë°í¸®ÁòÀº RSA ¾Ë°í¸®ÁòÀε¥ RSA µ¥ÀÌÅÍ
º¸¾Èȸ»ç°¡ Æ‾Çã¿Í »ç¿ëÇã°¡¸¦ °¡Áö°í ÀÖ´Ù. ºñ´ëĪ ¾Ë°í¸®ÁòÀÇ ´ÜÁ¡Àº °è»ê
ÁֱⰡ ±æ´Ù´Â °ÍÀÌ´Ù. ÀÌ‾ÇÑ ÀÌÀ‾ ¶§¹®¿¡ ´ëĪ ¾Ë°í¸®ÁòÀº ¼Û½Å³»¿ëÀÇ º¸
È£¸¦ À§ÇØ ¸¹ÀÌ »ç¿ëµÇ°í, ºñ´ëĪ ¾Ë°í¸®ÁòÀº ¼Û/¼ö½ÅÀÚÀÇ È®ÀÎÀ» À§ÇØ ÁÖÎ
»ç¿ëµÇ°í ÀÖ´Ù. PC º£À̽ºÀÇ ¸Þ½ÃÁö Àü¼Û ¾ÖÇø®ÄÉÀ̼ǿëÀ¸Î »ç¿ëÀÌ °¡´ÉÇÑ
DES ¼ÒÇÁÆ®¿þ¾î »óÇ°À¸Î´Â ¿¡º£¹Æ®»çÀÇ "ÇÁ¶óÀ̺ñÆ® ¶óÀÎ"°ú ¼¾Æ®² Æ÷ÀÎ
Æ® ¼ÒÇÁÆ®¿þ¾î»çÀÇ "PC ½ÃÅ¥¾î"µîÀÌ ÀÖ´Ù.
Áö³ 75³â ÀÌÈÄ ÀüÀÚ¿ìÆíÀÇ È®»êÀ¸Î ¸Þ½ÃÁö ±³È‾Á¦Ç°ÀÇ ¾ÈÁ¤ÀûÀÎ »ç¿ëÀ» ÁÖ
µµÇÒ Ç¥ÁØ °³¹ß¿¡ ºÒÀÌ ºÙ¾ú´Ù. ÀÌ°ÍÀº ¸Þ½ÃÁö¸¦ ¼Û½ÅÇÏ´Â »ç¶÷°ú ¼ö½ÅÇÏ´Â
»ç¶÷ÀÌ ´Ù¾çÇÑ ÇçÆû°ú ³×Æ®¿öÅ© ¾ÆÅ°ÅØó¿¡ ±¸¾Ö¹ÞÁö ¾Ê°í ¼Î Åë½ÅÇÒ ¼ö
ÀÖµµÏ ÇÏ´Â ¸ðµ¨À» ±ÔÁ¤ÇÏÁ´Â °ÍÀÌ´Ù.
ÀüÀÚ¿ìÆí¿ë Ç¥ÁØÀ¸Î´Â X.400°ú X.500ÀÌ Ã¤Åõǰí ÀÖ´Ù. X.400Àº ±¹Á¦Àü½ÅÀü
È ÀÚ¹®À§¿øȸ(CCITT)¿¡ ÀÇÇØ °³¹ßµÈ OSI ÃßõÀÇ ÀüÀÚ MHS ¿ä¼ÒÀ̸ç, ÀÌ¿Ü¿¡
¼Û/¼ö½ÅÀÚÀÇ À̸§°ú ÁÖ¼Ò¸¦ Á¤ÀÇÇÑ´Ù.
X.500Àº µðºÅ丮¸¦ Á¶È¸Çϱâ À§ÇØ »ç¿ëµÇ´Â 2°³ÀÇ ÇÁÎÅäÄÝ(´ëÈ¿¡ ÇÊ¿äÇÑ
Åë½Å±Ô¾àÀ¸Î ¸Þ½ÃÁöÀÇ Ã³À½°ú ³¡¿¡ ºÙÀÓ. DAP¿Í DSP°¡ ÀÖÀ½)°ú ºÐ»êµÈ Àüü
µðºÅ丮ÀÇ ±¸Á¶¸¦ Á¤ÀÇÇÑ´Ù.
ºñ´ëĪÀû °ø°øÀÇ ¾ÏÈ£ ½Ã½ºÅÛÀ» È¿°úÀûÀ¸Î »ç¿ëÇϱâ À§Çؼ´Â »ç¿ëÀÚ°¡ ¹Ý
µå½Ã ¼Û/¼ö½Å¿ë Å°¸¦ ½±°Ô ȹµæÇÒ ¼ö ÀÖ¾î¾ß ÇÑ´Ù. ¸¸¾à ¼Û/¼ö½Å¿ë Å°°¡ °ø
°øÀÇ X.500 µðºÅ丮¿¡ ÀúÀåµÇ´Â °æ¿ì »ç¿ëÀÚ¿Í ½Ã½ºÅÛ°£ Ãæµ¹ÀÌ ÀϾ°Å³ª
°ø°øÀÇ µðºÅ丮 ³»¿ëÀÌ º‾°æµÉ ¼ö ÀÖ´Ù. X.500 µðºÅ丮´Â º¸¾ÈÀ̳ª »ç¼³
¼ºñ½º°¡ ¾Æ´Ï±â ¶§¹®¿¡ µðºÅ丮κÎÅÍ Àо °ø°øÀÇ Å°¸¦ È®ÀÎÇϱâ À§ÇØ
¼ µðºÅ丮°¡ »ç¿ëÀڵ鿡°Ô Á¦°øµÇ¾î¾ß ÇÑ´Ù. ¸Þ½ÃÁö ¼Û½ÅÀÚÀÇ È®ÀÎÀº OSI
¹æ¾îÀÇ ÇʼöÀû ÀåÄ¡ÀÌ´Ù.
#include <stdlib.h>
#include <stdio.h>
#include <ctype.h>
#include <string.h>
#define MAXKEY 7
static KEY[MAXKEY] = { 0x32 , 0x23 , 0xf2 , 0xeb , 0x43 , 0x0c,0x1b };
static unsigned int count =0;
void code(char *in, char *out);
void code(char *in, char *out)
{
FILE *fp,*fp2;
char ch;
if (( fp=fopen(in,"rb"))==NULL) {
printf("cannot open input FILE [%s]\n",in);
exit(1);
}
if(fp2=fopen(out,"wb"))==NULL) {
printf("cannot open output FILE [%s]\n",out);
exit(1);
}
do {
ch=getc(fp);
ch^= KEY[ count % MAXKEY ];
if(feof(fp) ) break;
putc(ch,fp2);
count ++;
} while(!ferror(fp) && !ferror(fp2));
close(fp);close(fp2);
}
void main(int argc,char *argv[])
{
printf("CODE CHANGE V1.0 by ddn2\n");
if(argc!=3){
printf("\a\aUsage : codech <input file> <output file>\n");
exit(1);
}
if(!strcmp(argv[1],argv[2])) {
printf("\nFileNAME must be like !\n");
exit(0);
}
code(argv[1],argv[2]);
printf("\n Complete Coding !!\n");
}
#include <stdio.h>
#include <conio.h>
#include <string.h>
#define kcode 0x5f
main(int argc,char *argv[]){
FILE *fp1,*fp2;
int ch;
textmode(C80);
clrscr();
textbackground(BLU );
textcolor(CYAN);
highvideo();
window(20,10,60,20);
clrscr();
if(argc!=3){
cprintf("Usuage:amho file1.nam file2.nam\r\n");
printf("\n\n\n\n\n\n\n\n\n KIM's secret-number program");
exit(1);
}
cprintf("\r\n\n\n\n\nNow,your progiam is LOCKKING\r\nFor secret-number\r\n
\n\n\n");
fp1=fopen(argv[1],"rb");
fp2=fopen(argv[2],"wb");
do{
ch=getc(fp1);
if(feof(fp1))break;
ch^=kcode;
putc(ch,fp2);
}while(!ferror(fp1)&&!ferror(fp2));
printf("Complete.........");
fclose(fp1);
fclose(fp2);
}
´ÙÀ½Àº ¾Ïȣȳª ÄÄÇ»ÅÍ °üà Á¤º¸¸¦ ¾òÀ»¼ö ÀÖ´Â ´ëÇ¥Àû »çÀÌÆ® µéÀÌ´Ù.
*ÄÄÇ»ÅÍ ¼ºñ½º
À̸§:biz.comp.services
ÀÚ¿øÁ¾ù:À‾Áî³Á
»ó¾÷ÀûÀÎ ¼ºñ½º »ç¾÷¼Ò.
*Åë½Å
À̸§:comp.dcom.mobems
ÀÚ¿øÁ¾ù:À‾Áî³Á
µ¥ÀÌŸ Åë½Å,Çϵå¿þ¾î¿Í ¼ÒÇÁÆ®¿þ¾î.
*¾ÏÈ£ÇÐ
À̸§:crypto-l
ÀÚ¿øÁ¾ù:¸®½ºÆ®¼ºê
ÁÖ¼Ò:crypto-l@jpntuvm0.bitnet
¾ÏÈ£ÇÐ ³íÀÇ ÁøÇàÁßÀÎ ¿¬±¸ Á¤º¸±³È‾µî
¼öÇаú °üÃµÈ Á¤º¸ À‾Æ÷
±¸µ¶¿äûÁÖ¼Ò.
info-pgp-request@lucpul.it.luc.edu
À̸§:info-PGP
Áö¿øÁ¾ù:¸®½ºÆ®
ÁÖ¼Ò:info-pgp@lucpul.it.luc.edu
°ø°³ Å° ¾ÏÈ£ ¼ÒÇÁÆ®¿þ¾î ÆÐÅ°Áö PGP¿¡ ´ëÇÑÅäÐ.
À̸§:info-PGP
ÀÚ¿øÁ¾ù:¸®½ºÆ®
ÁÖ¼Ò:info-pgp-request@lucpul.it.luc.edu
MS-DOS,UNIX,SPARC,VMS,¾ÖÆ®¸®,¾Æ¹Ì°¡,±×¸®°í
´Ù¸§ ÇçÆûÀ» À§ÇÑ PHIL ZIMMER MAN & CO`S PRETTY
GOOD PRIVACY(PGP)°ø°³ Å° ¾ÏÈ£ ÇÁαץÀ» À§ÇÑ ÅäÐ.
*»çÀ̹ö°ø°£
À̸§:cyber-l
ÀÚ¿øÁ¾ù:¸®½ºÆ®¼ºê
ÁÖ¼Ò:cyber-l@marist.bitnet
»çÀ̹ö°ø°£ Çö»ó¿¡ °üÇÑ°Í.
À̸§:virtu-l
ÀÚ¿øÁ¾ù:¸®½ºÆ®¼ºê
ÁÖ¼Ò:virtu-l@vmd.cso.uiuc.edu
À‾Áî³Ý ´ÜüÀÎ sci.virtual-worldsÀÇ ÇÑ °ÔÀÌÆ®¿þ¾î
ÀÌ¸ç °¡»óÇö½Ç¿¡ ´ëÇÑ ÅäÐ.
*¿¬¹æÁ¤ºÎ
À̸§:fedjobs
ÀÚ¿øÁ¾ù:¸®½ºÆ®¼ºê
ÁÖ¼Ò:fedjobs@dartcmsl.dartmouth.edu
¾Æ¡¾Æ Çѱۿ¡¼ÀÇ ÄÚµå ÀúÀå¹ý
¿©‾ ´Ù¸¥ ÇÁαץµéó³ ¾Æ¡¾Æ Çѱ۵µ ÇÑ±Û ÄÚµå´Â Á¶ÇÕÇü Äڵ带 ¾´´Ù. ±×‾³ª
¾Æ¡¾Æ ÇÑ±Û ÈÀÏÀ» ÀÏ¹Ý ¿¡µðÅÍÎ ºä Çغ» »ç¶÷Àº ¹®¼ ÀÚü´Â ÀüÇô ³ªÅ¸³ªÁö ¾Ê´Â°Í
À» º¸¾ÒÀ» °ÍÀÌ´Ù. ¾Æ¡¾Æ ÇÑ±Û ÈÀÏ¿¡¼´Â 2ByteÄڵ带 ÇÏÀ§,»óÀ§ÀÇ ¼øÀ¸Î ³ªÅ¸³»±â
¶§¹®ÀÌ´Ù. Á¶ÇÕÇü ÇÑ±Û "°¡"ÀÇ ÄÚµå´Â 88h,61hÀε¥ ¾Æ¡¾Æ Çѱۿ¡¼´Â ÀÌ°ÍÀÌ 61h,88h
Î ÀúÀåµÇ´Â °ÍÀÌ´Ù. ÀúÀå »Ó ¾Æ´Ï¶ó ¾Æ¡¾Æ ÇѱÛÀÇ ¸ðµç ±ÛÀÚ Ã³¸®´Â ±×¿Í °°Àº ¹æ¹ý
À» ¾´´Ù. 2Byte¹®ÀÚ°¡ ¾Æ´Ñ°Í..¿¹¸¦ µéÀÚ¸é "A"ÀÇ °æ¿ì´Â ¾Æ¡¾Æ Çѱۿ¡¼´Â 2ByteÄÚ
µåÎ º‾È‾ÇÏ¿© ó¸®ÇÑ´Ù Áï A´Â Äڵ尡 41hÀε¥ ¾Æ¡¾Æ Çѱۿ¡¼´Â 0041h Áï, 41h,00h
Î ¹Ù²Ù¾î ó¸®ÇÏ°Ô µÈ´Ù.
¾Æ¡¾Æ ÇÑ±Û ¾Ïȣü°è¿¡ ´ëÇÑ °£´ÜÇÑ ¼³¸í
¾Æ¡¾Æ ÇÑ±Û ¾Ïȣü°è´Â ÀÔ¹ÞÀº ¾ÏÈ£¸¦ °¡Áö°í ¿©‾ ¿¬»ê°úÁ¤À» °ÅÃļ Äڵ带 ¸¸
µé°í ±× ÄÚµåÎ ¹®¼¸¦ ¾ÏÈ£ÈÇÏ´Â ¹æ¹ýÀ¸Î, ÀÌ ¹æ¹ýÀº ¿ø¡ ¾Ïȣü°è¸¦ ¿ÏÀüÈ÷ ÀÌÇØ
ÇÏ°í ¼³»ç ¾Æ¡¾Æ ÇѱÛÀÇ ¼Ò½º¸¦ ÀÔ¼öÇß´Ù°í Ä¡´õ¶óµµ Ç®±â°¡ °ÅÀÇ ºÒ°¡´ÉÇÑ ¹æ¹ýÀÌ´Ù.
ÀÔ¹ÞÀº ¾ÏÈ£¸¦ ¾Ë¾Æ¾ß ¹®¼¸¦ Ǫ´Â Å° Äڵ带 ±¸ÇÒ ¼ö Àֱ⠶§¹®¿¡, ¼Ò½º¸¦ ÀÔ¼öÇÑ
´Ù°í Çصµ ¾Ïȣü°è¸¦ ÀÌÇØÇÏ´Â Á¤µµ¿¡¼ ±×Ä¡°Ô µÈ´Ù. ±×‾³ª ±×± ¾ÏÈ£È ±â¹ýÀÌ ÃÖ
±Ù ±úÁ³´Ù. ÀÌÐÀûÀ¸Î ±ú±â°¡ °ÅÀÇ ºÒ°¡´ÉÇÏ´Ù°í ÇÏ´Â ¾ÏÈ£°¡ ±úÁø ÀÌÀ‾´Â ¹«¾ùÀ̸ç
±× ¹æ¹ýÀº ¹«¾ùÀϱî? ÀÌ ´Ü¿ø¿¡¼´Â ¾Æ¡¾Æ ÇѱÛÀÇ ¾Ïȣü°è¿Í ±×°ÍÀ» Ǫ´Â ¹æ¹ýÀ» ¼³
¸íÇÑ´Ù. ¾Æ¡¾Æ ÇÑ±Û ¾Ïȣü°è¿¡¼ ¾²ÀÌ´Â ÄÚµå´Â µÎ°¡Áö°¡ Àִµ¥, ÆíÀÇ»ó À̰͵éÀ»
ºñ±³ ÄÚµå, Å° ÄÚµå¶ó°í ºÎ¸£ÀÚ.
ºñ±³ÄÚµå¶õ?
ºñ±³ÄÚµå´Â ÀÔ¹ÞÀº ¾ÏÈ£°¡ ¹®¼ÀÇ ¾ÏÈ£¿Í °°ÀºÁö¸¦ ºñ±³Çϴµ¥ ¾²ÀÌ´Â °ÍÀ¸Î ¹®¼
ÀÇ Çص¶ ÀÚü¿¡´Â °ü¿©ÇÏÁö ¾Ê´Â´Ù. ¾Æ¡¾Æ ÇѱÛÀº ¹®¼¿¡ ¾ÏÈ£¸¦ ´ã¾Æ ÀúÀåÇÒ¶§¿¡ ¿ì
¼± ÀÔ¹ÞÀº ¾ÏÈ£ÀÇ ¾Æ½ºÅ° ÄÚµå ȤÀº Á¶ÇÕÇü ÇÑ±Û Äڵ带 °¡Áö°í »çÄ¢¿¬»ê°ú ºñÆ®¿¬
»êÀ» ¼‾¾î ±× °á°ú¸¦ ÈÀÏ¿¡ ÀúÀåÇÑ´Ù. ±×¸®°í ¾ÏÈ£°¡ °É¸° ¹®¼¸¦ ºÒ‾¿Ã¶§´Â ¾ÏÈ£¸¦
ÀÔÂ¹Þ¾Æ °°Àº °è»êÀ» ÇÏ¿© ³ª¿Â °á°ú¿Í ÈÀÏ¿¡ ÀúÀåµÈ °á°ú¸¦ ºñ±³ÇÏ¿© °°À» °æ¿ì ¹®
¼¸¦ Ǫ´Â ÀÛ¾÷À¸Î ³Ñ¾î°¡°í Ʋ¸± °æ¿ì¿¡ ¾ÏÈ£°¡ Ʋ¸®´Ù´Â ¸Þ½ÃÁö¸¦ ÃâÂÇÏ°í ¹®¼ÀÐ
±â¸¦ Ãë¼ÒÇÑ´Ù.
ÀÌ ÄÚµåÀÇ ¸ñÀûÀº ´Ü¼øÈ÷ ºÒ‾¿Ã¶§ ÀÔ¹ÞÀº ¾ÏÈ£¿Í ÀúÀåÇÒ ¶§ ÀÔ¹ÞÀº ¾ÏÈ£¸¦ ºñ±³
ÇÏ´Â °ÍÀÌÁö¸¸ ±×¸´Ù°í ¾ø¾î¾î´Â ¾ÈµÇ´Â ÄÚµåÀÌ´Ù. °¡É, ¹®¼¸¦ Ǫ´Â Äڵ带 °¡Áö°í
¾ÏÈ£¸¦ ºñ±³ÇÑ´Ù°í ÇÏ¸é ¹®¼¸¦ Ǫ´Â Äڵ尡 ÈÀÏ¿¡ ÀúÀåµÇ¾î ÀÖ¾î¾ß ÇÏ´Â °ÍÀÌ´Ù. ±×
‾¸é ¹®¼ ¾È¿¡ ÀúÀåµÈ Äڵ带 °¡Áö°í ±× ¹®¼ÈÀÏÀ» Ç® ¼ö°¡ ÀÖ°Ô µÈ´Ù. ±×‾¹ÇÎ ºñ
±³ÇÏ´Â ÄÚµå¿Í ¹®¼¸¦ Ǫ´Â Äڵ带 µûÎ ÇÏ¿© ºñ±³ÇÏ´Â Äڵ常 ÈÀÏ¿¡ ÀúÀåÇÏ´Â °ÍÀÌ
´Ù.
ºñ±³ÄÚµåÀÇ ±¸¼º
ºñ±³ÄÚµå´Â 16bit, Áï 2¹ÙÀÌÆ®ÀÇ Á¤¼öÎ ÀÌç¾îÁ®ÀÖ´Ù. ¼öΠģ´Ù¸é 0~65535ÀÇ °ªÀÌ
´Ù. ±×³ ÀÌ ºñ±³ÄÚµå´Â ¾î¶»°Ô ¸¸µå´Â°¡? ºñ±³Äڵ带 ±¸ÇÏ´Â çƾÀ» cÎ ³ªÅ¸³»¸é ´Ù
À½°ú °°ÀÌ µÈ´Ù. ¿©±â¼´Â À§¿¡¼ ¼³¸íÇÑ Äڵ带 »ç¿ëÇÑ´Ù.
unsigned int password[100]={...} /*Æнº¿öµåÀÇ 2ByteÄÚµåµé... 0ÀÌ¸é ³¡À» ³ªÅ¸³¿*/
unsigned int get_comparing_code()
{
unsigned int cc=0,offs=0;
while(password[offs]==0) {
cc<<=3;
cc~=password[offs];
cc+=0xa5;
offs+=2;
}
cc%=0xff00;
cc+=0x55;
return(cc);
}
±×³ ÀÌ ºñ±³ÄÚ´Â ¾îµð¿¡ ÀúÀåµÇ´Â°¡? ¾Æ¡¾Æ ÇÑ±Û 2.1ÀÇ HWP¹®¼ÈÀÏÀÇ offset 126
¿¡ 2Byte°¡ ÀúÀåµÇ¾îÀÖ´Ù. ¹°Ð ¾ÏÈ£°¡ ¾øÀ»¶§´Â 00h,00h ÀÌ´Ù.
¾ÏÈ£¸¦ ³Ö¾î ÀúÀåÇÑ ÈÄ¿¡ À§¿Í °°Àº ½ÄÀ¸Î ºñ±³Äڵ带 °è»êÇÏ¿© ¸¸µç ÈÄ ±×°÷¿¡ Àú
ÀåµÈ ¼öÄ¡¸¦ º¸¸é ±× µÑÀº ÀÏÄ¡ÇÒ °ÍÀÌ´Ù.
Çص¶ÄÚµå¶õ?
Çص¶ÄÚµå´Â ¹®¼ÀÇ ¾Ïȣȸ¦ Ǫ´Â µ¥ ¾²ÀÌ´Â ÄÚµåÎ °¡Àå Áß¿äÇÑ ÄÚµå¶ó°í ÇÒ ¼ö ÀÖ
´Ù. ÀÌ Çص¶ ÄÚµå´Â ¹®¼ ÈÀÏ¿¡ ÀúÀåµÇÁö ¾Ê´Â´Ù. ÀÌ Çص¶ÄÚµå´Â ¿ª½Ã ¾ÏÈ£¸¦ ÀÔ¹Þ
¾Æ ±× ¾Æ½ºÅ° ÄÚµå ȤÀº Á¶ÇÕÇü Äڵ带 °¡Áö°í ¿©‾ ¿¬»êÀ» ÇÏ¿© ¸¸µé¾îÁö¸ç, ¾ÏÈ£¸¦
³Ö¾î¼ ÀúÀåÇÒ¶§, ȤÀº ¾ÏÈ£¸¦ ÀÔÂ¹Þ¾Æ ºÒ‾¿Ã¶§ °è»êÀ» ÇÏ¿© ¾ÏÈ£ÈÇÏ¿© ÈÀÏÀ» Àú
ÀåÇϰųª ¾ÏÈ£ÈµÈ ÈÀÏÀ» Ç®¾î Àоî¿Ã¶§ Àá½Ã¸¸ »ý¼ºµÈ´Ù. ÀÌ Çص¶Äڵ带 »ý¼ºÇÏ´Â
°úÁ¤Àº ºÒ‾¿Ã¶§ÀÇ °æ¿ì ÀÔ¹ÞÀº ¾ÏȣΠ¸¸µç ºñ±³ÄÚµå¿Í ÈÀÏ¿¡ ÀúÀåµÈ ºñ±³Äڵ带
ºñ±³ÇÏ¿© °°À» ¶§ ½ÇÇàµÈ´Ù.
Çص¶ÄÚµåÀÇ ±¸¼º
Çص¶ÄÚµå´Â ºñ±³ÄÚµå¿Í ¸¶Âù°¡ÁöÎ 16bit, 2¹ÙÀÌÆ®ÀÇ Á¤¼öÎ ÀÌç¾îÁ®ÀÖ´Ù. ¿ª½Ã ¼ö
Πģ´Ù¸é 0~65535ÀÇ °ªÀÌ µÈ´Ù. Çص¶ÄÚµåÀÇ Á¦ÀÛ¹ýµµ ºñ±³Äڵ带 ¸¸µå´Â ¹ý°ú ¸Å¿ì
ºñ½ÁÇÏ´Ù. ´Ü Çص¶Äڵ带 ¸¸µé¶§´Â ºñÆ® ¿¬»ê Áß È¸Àü(Rotate)¶ó´Â ¿¬»êÀ» ¾²´Âµ¥ ¸¹
Àº °í±Þ¾ð¾îµéÀÌ ÀÌ ¿¬»êÀº Áö¿øÀ» ÇÏÁö ¾Ê±â ¶§¹®¿¡ ¿©±â¼´Â ´Ù¸¥ ¿¬»êµéÀ» ¼‾¾î¼
ȸÀü¿¬»êÀ» ÇÒ ¼ö ÀÖµµÏ ÇÒ °ÍÀÌ´Ù.
unsigned int password[100]={...} /*Æнº¿öµåÀÇ 2ByteÄÚµåµé... 0ÀÌ¸é ³¡À» ³ªÅ¸³¿*/
unsigned int get_decoding_code()
{
unsigned int dc=0,offs=0;
while(password[offs]==0) {
dc=(dc>>3)|((dc&7)>>13); /* dc¸¦ ¿À¸¥ÂÊÀ¸Î 3ºñÆ® ȸÀüÇÑ´Ù */
/* À§ÀÇ ¹®Àå ´ë½Å
asm mov cl,3
asm ror dc,cl
À¸Î ¹Ù²Ü ¼ö ÀÖ´Ù.
*/
dc~=password[offs];
dc+=0xa5;
offs+=2;
}
return(dc);
}
/* FileName: HWP21NUM.C
Description: HWP 2.1 Çü½ÄÀÇ ¹®¼ÆÄÀÏÀÇ ¼ýÀÚ ¾ÏÈ£ Çص¶±â
Programming: Lim Hyoung-Taek
Compile: tcc -B hwp21num
*/
#include <io.h>
#include <fcntl.h>
#include <string.h>
#include <stdio.h>
/* ¼³¸í: ¿©±â¼´Â ÀÔ ŰÀÇ °ªÀ» ÃÖ´ë 5°³±îÁö Àâ¾Æ¼ ÇÁαס¹ÖÀ» Çß´Ù.
¸¸¾à Å° °ªÀ» ´õ ¸¹ÀÌ Àâ¾Æ¾ß ÇÏ´Â °æ¿ì´Â ÇÁαץÀ» °íÃļ
»ç¿ëÇϱ⠹ٶõ´Ù. C¸¦ Á¶±Ý ÇϽô ºÐÀ̶ó¸é ½±°Ô ¼öÁ¤ÇÒ ¼ö
ÀÖÀ» °ÍÀÌ´Ù.
Âü°íÎ ¸¸¾à ¾ÏÈ£°¡ 123456°ú °°ÀÌ 6ÀÚ¸®ÀÎ °æ¿ì´Â ¾ÏÈ£ Çص¶½Ã
23456°ú °°ÀÌ µÚ¿¡¼ 5°³ ±îÁö¸¸ Çص¶ÇÑ´Ù. ÀÌ °æ¿ì ¼ýÀÚ´Â 0~9
±îÁö À̹ÇÎ Å° Çϳª¾¿ ´ÃÀ϶§ ¸¶´Ù 10¹èÀÇ ½Ã°£ÀÌ ¼Ò¿äµÈ´Ù.
»ç½Ç Çص¶ ÇÁαץÀ̶ó±â º¸´Ù´Â Æнº¿öµå ¾îÅà ÇÁαץ°ú
ºñ½ÁÇÏ´Ù°í ÇÒ ¼ö ÀÖ´Ù.
¾Ë°í¸®Áò º¸´Ù´Â »ý»ê¼º À§ÁÖÎ »¡¸® ÀÛ¼ºÇ߱⠶§¹®¿¡ ¼Ò½º¸¦
º¸¸é ´Ù¼Ò ºñÈ¿À²ÀûÀÎ ºÎºÐÀÌ ÀÖÀ»ÅÙµ¥, Á» ´õ ºü¸¥ ¼Óµµ°¡
³ª¿Ã ¼ö ÀÖµµÏ °íÃļ »ç¿ëÇصµ ÁÁ´Ù.
Á¦°¡ ½Ã°£ÀÌ ¾ø¾î¼ ±×±µ¥, ´ã¿¡ ½Ã°£ÀÌ ³ª¸é(°ÅÀÇ ¾È³‾°Ì´Ï´Ù: ½Ã°£³ª¸é
³î¾Æ¾ßÁÒ...) °ÁÂÇØ µå¸®ÁÒ...
»ç½Ç ÀÌ ÇÁαץ°ú´Â ´Ù¸¥¹æ¹ýÀ¸Î... ½ÇÁ¦Î ÇÑ.ÄÄ¿¡¼´Â 32bit¶ó°í´Â
ÇÏÁö¸¸ 16bitÀÇ Çص¶¿ëÅ°¸¦ »ç¿ëÇϹÇÎ Çص¶¿ë Å°¸¦ ¾îÅÃÇؼ ¹®¼ÆÄÀÏÀ»
Á¤»óÀûÀÎ Äڵ尡 ³ª¿Ã¶§±îÁö ±¸ÇÏ¸é ´Ü ¼ö½ÊÃÊ¸é ½±°Ô Çص¶¿ë Å°¸¦ ±¸ÇÒ
¼ö ÀÖ½À´Ï´Ù. ÀÏ´Ü Çص¶¿ëÅ°¸¸ ±¸ÇÏ¸é ³ª¸ÓÁö´Â ½±°Ô ÇÒ ¼ö ÀÖÁÒ..
½ÇÁ¦Î code21ÀÌ À̱ ¹æ¹ýÀÏ °Ì´Ï´Ù...
±Ùµ¥.. ÇÑ±Û 3.0¿¡¼´Â 64bit¸¦ »ç¿ëÇÑ´Ù°í ÇÏ´Ï ¹°Ð 32bitÀÇ Çص¶Å°¸¦
»ç¿ëÇÏ°ÚÁö¸¸¿ä... À̶§´Â Á¤¸» ¾îÅÃÇصµ 42¾ï¹øÀÌ»óÀ» ¾îÅÃÇØ¾ß ÇÏ´Ï
(¹°Ð Áß°£¿¡ ±¸ÇÒ¼öµµ ÀÖÁö¸¸¿ä.) À̱ ¹æ¹ýÀ¸Î´Â °ÅÀÇ ºÒ°¡´ÉÇÏ´Ù°í
ÇÒ ¼ö ÀÖ°í¿ä... »õÎ¿î ¹æ¹ýÀ» ¿¬±¸ÇØ¾ß ÇÒ°Ì´Ï´Ù. ÀÏ´Ü zipÀÇ ¾ÏȣȰ¡
32bit des¶ó°í ÇÏ´Ï À̸¦ ±úº¸´Â °Íµµ ÁÁÀº ¹æ¹ýÀÏ°Ì´Ï´Ù. ½ÇÁ¦Î ¾ÆÁ÷
±úÁöÁö ¾Ê°í ÀÖ½À´Ï´Ù. ÀϺ»¿¡¼ ´©±º°¡ des¸¦ ²£´Ù´Â ¾ê±âµµ ÀÖ´õ±º¿ä...
±×‾³ª 3.0¿¡¼µµ ¼ýÀÚ¾ÏÈ£¿¡¼´Â ÀÌ ÇÁαץ¿¡¼ ¾Ë°í¸®Áò¸¸ ¹Ù²Ù¸é
±×¡µµ Àû¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù.
À̱ ¹æ½ÄÀ¸Î ¿µ¹®À̳ª ÇÑ±Û ¾ÏÈ£¸¦ ¾Ë¾Æ³»´Â°Ç ½Ã°£ÀÌ ³Ê¹«³Ê¹« ¾öû³ª°Ô
°É¸®¹ÇÎ ½ÇÁ¦Î ¹é³âÀÌ ³Ñ°Ô(±× ÀÌ»óÀÌ µÉ¼öµµ: Å° °¹¼ö¿¡ µû¶ó¼ ´Þ¶óÁö
¹ÇÎ..) °É¸± ¼öµµ ÀÖ½À´Ï´Ù..
ÇÏ¿©°£ Âü°íÇϼż ´õ ÁÁÀº ¾Ë°í¸®ÁòÀ» ¿¬±¸ÇϽñ⠹ٶø´Ï´Ù.
*/