VFP 愛用者社區 首頁 VFP 愛用者社區
本討論區為 Visual Foxpro 愛用者經驗交流的地方, 請多多利用"搜尋"的功能, 先查看看有無前例可循, 如果還有不懂的再發問. 部份主題有附加檔案, 須先註冊成為社區居民才可以下載.
 
 常見問題常見問題   搜尋搜尋   會員列表會員列表   會員群組會員群組   會員註冊會員註冊 
 個人資料個人資料   登入檢查您的私人訊息登入檢查您的私人訊息   登入登入

★★ 做个【日记】软件,把加密内容存入sql server字段中,探讨!!

 
發表新主題   回覆主題    VFP 愛用者社區 首頁 -> VFP 討論區
上一篇主題 :: 下一篇主題  
發表人 內容
dxnn520



註冊時間: 2011-09-09
文章: 3


第 1 樓

發表發表於: 星期五 九月 09, 2011 5:22 am    文章主題: ★★ 做个【日记】软件,把加密内容存入sql server字段中,探讨!! 引言回覆

其实就是如何把一篇文章(最少1000字)以加密形式存入sql server字段中。只可惜MyFll中的Encrypt最大只支持256个字符。下面这段代码,一增加字符就不成功,不知为什么?各位可以试试,有没有其他方法实现!和大家探讨!

*加密“演示”
?
?
cs="我是一个兵,来自老百姓!" && 明码 && \\ 如果用“我是一个兵”就可以,再增加就出错!
ke="需要加的密码" && 密钥
ct=""
i=1
DO WHILE i<LEN(cs)
ch=SUBSTR(cs,i,2)
ky=SUBSTR(ke,i,2)
chn=ASC(ch)+(ASC(ky)-45120)
IF chn>55110
chn=chn-4995
ENDIF
ct=ct+CHR(chn)
i=i+2
ENDDO
?cs && 明码
?ke && 密钥
?ct && 加密后的字符串为 “ 晤糑諻蒁蝩罧 ”
?
?[img][/img][url][/url]
回頂端
檢視會員個人資料 發送私人訊息
jys



註冊時間: 2004-12-27
文章: 33
來自: 台灣

第 2 樓

發表發表於: 星期五 九月 09, 2011 10:28 am    文章主題: 引言回覆

看起來像是因為密碼的位數不足的關係。若要動得比較少的話,
nKe = CEILING(Len(cs) / Len(Ke))
Kes = Replicate(ke,nKe )
ct=""
i=1

Do WHILE i<LEN(cs)
ch=SUBSTR(cs,i,2)
ky=SUBSTR(kes,i,2)
chn=ASC(ch)+(ASC(ky)-45120)
If chn>55110
chn=chn-4995
Endif
ct=ct+CHR(chn)
i=i+2
Enddo

實際上應該是密碼的位數不足時,要往第一個循環抓。
回頂端
檢視會員個人資料 發送私人訊息
從之前的文章開始顯示:   
發表新主題   回覆主題    VFP 愛用者社區 首頁 -> VFP 討論區 所有的時間均為 台北時間 (GMT + 8 小時)
1頁(共1頁)

 
前往:  
無法 在這個版面發表文章
無法 在這個版面回覆文章
無法 在這個版面編輯文章
無法 在這個版面刪除文章
無法 在這個版面進行投票
無法 在這個版面附加檔案
無法 在這個版面下載檔案


Powered by phpBB © 2001, 2005 phpBB Group
正體中文語系由 phpbb-tw 維護製作