[轉錄]Re: [問題] 請問一般程式是用什麼方式儲 …
※ [本文轉錄自 C_and_CPP 看板 #1DA-W5EU ]
作者: tropical72 (藍影) 看板: C_and_CPP
標題: Re: [問題] 請問一般程式是用什麼方式儲存個資呢?
時間: Tue Jan 11 13:17:35 2011
※ 引述《QQ29 (我愛阿蓉)》之銘言:
: 請教各位
: 一隻程式如果要儲存使用者的個人資料 一般都用什麼方式儲存呢
: 假如要儲存使用者密碼
: 我自己是覺得不可能完全不處理就直接寫成text 或是 binary
: 是怕說有人可以竊取到密碼
是不是直接寫成 text 或 binary 其實是其次,
這部份不知道算不算是密碼學的一種..
介紹幾種我知道簡單的方法,這裡分二部份說明,
第一部份是字元的翻譯順序
第二部份是字元的替代方式,不過這方面文獻大多只針對英文字母在做探討。
----------------------------------------------
PART Ⅰ:翻譯順序
1. 反轉換位 - 其實就是 reverse
明碼:Hello, World!!
密碼:!!dlroW ,olleH
破解度:☆☆☆☆☆
2. 幾何圖形換位 - 以某種幾何圖形作為位置變換基準。 ex: 正方形
明碼(直的看): Hello, World!!
Hoo!
e,r!
l l(NULL)
lWd(NULL)
密碼(橫著翻):
Hoo!e,r!l l(NULL)lWd(NULL)
破解度:☆☆☆★★
3. 循環途徑換位 - 幾何圖形換位的改善。
明碼(直的看):Hello, World!!
H o o !
↙ ↙ ↙
e , r !
↙ ↙ ↙
l l (NULL)
↙ ↙ ↙
l W d (NULL)
密碼(斜著翻):
Hoeo,l!r l!lW(NULL)d(NULL)
破解度: ☆☆★★★
註解:還有順時針、逆時針的方式,看要怎麼跑隨便你。
4. 行換位法 - 用幾何圖形交換法中之資料調動行號順序
明碼:Hello, World!!
行號 1 2 3 4
-----------------
H o o !
e , r !
l l (NULL)
l W d (NULL)
密碼(順序調為 1,3,2,4):
Hellorldo,W!!(NULL)(NULL)
破解度:☆☆☆★★
-------------------------------------------------------------
PART Ⅱ:替代方法
A. 簡單代換 - 凱撒加密法是代表,假設 k=3,所有的 char 都進行 +3 動作,
a-> d, c->f..., x-> a, y-> b, z-> c... etc
好了之後再後 PART Ⅰ 方式加解密
B. 多字母取代 - 說白了就是凱撒法的改善。凱撒法的 k 是固定的,這裡
可以設定 k[n],那個 n 可以自己定,用完了循環就可以了。似乎是叫 Vigenere 法
k[3] :1,2,3
加密前:abcdefghij
k :1231231231
加密後:bdfegihjlk
------------------------------------------------------------
這部份如果研究淺但廣的話,我想一、二天可以研究完。
還要再涉入到 public key,那可能還要再下些功夫,(這部份完全沒碰)。
其實其它還有些議題很有趣,
比如說,
1. 怎麼把密碼存在 bmp 圖檔中 (存在每個 pixel rgb 的最後一個 bit) 等等之類
2. 怎麼鎖定檔案,用特殊的手法才能開啟,一般即使是 Administrator 也無法開啟
這部份涉入會愈來愈深,其它的有興趣的話再去查查密碼學之類的相關資料,
其實還蠻有趣的。
--
YouLoveMe() ? LetItBe() : LetMeFree();
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 180.177.76.142
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.135.27.39
推
01/12 15:09, , 1F
01/12 15:09, 1F
討論串 (同標題文章)
完整討論串 (本文為第 3 之 3 篇):
NetSecurity 近期熱門文章
PTT數位生活區 即時熱門文章