cooolftp 註冊過程 (643字)

看雪資料發表於2001-06-01

cooolftp 使用了經過修改的 des 來實現註冊判斷。每個註冊碼為 8 個字元,正好是 des 需要的 key 長度。具體流程:

const char magic[100][16] = { ..... };  <-- 事先存好的結果

strupr( key );
des_init( key );
des_encrypt( key, "coolftp....", outbuf );  <--- 是一個16字元的串,可以直接看到

for (i=0; i<100; i++) {
  if( !memcmp( outbuf, magic[i] ) ) reg_ok();
}
reg_failed();

所以註冊碼必須滿足:des後的結果是事先存好的100個結果之一。

它的所有註冊碼都是偶數數字和第偶數個字母(B,D,F...)組成的,這樣,一共有5+13=18個字元。在 18^8 範圍內窮舉,就可以得到註冊碼。

順便說一句,作者不懂密碼學,他修改過的 des 強度大大低於原來的 des。

相關文章