<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    posts - 2,  comments - 0,  trackbacks - 0
      2010年11月23日
        KEY采用的是求一個字符串的SHA1值(160bit)賦給一個int型數(shù)組int KEY[5]作為OTP生成方法的的參數(shù)輸入。輸入的字符串不可以超過16,通過判斷字符串長度提醒用戶輸入的KEY是否合法。將輸入的字符串通過Tochar方法法轉(zhuǎn)換成一個16元素的char型數(shù)組,然后再轉(zhuǎn)換成一個整形數(shù)組,對于長度小于16的空余元素則補零。調(diào)用SHA1類中的dofinal方法產(chǎn)生160bit數(shù)據(jù)作為一個5元素的int型數(shù)組作為OTP參數(shù)。
    posted @ 2010-11-23 12:28 趙朋川 閱讀(293) | 評論 (0)編輯 收藏
        OTP的counter為一個long型64位數(shù)據(jù),每次產(chǎn)生一個新OTP后,counter值做自加一處理。此程序的counter采用android中輕量級存儲sharedpreference進行保存。首先建立存儲文件夾,在文件夾下建立名為COUNTER的存儲變量,在調(diào)用OTP產(chǎn)生程序時,首先將COUNER的值從文件夾中讀出,為一個String類型,利用命令Long.parseLong()方法將其轉(zhuǎn)換為long型整數(shù)作為OTP程序的參數(shù)參與運算,然后COUNTER自加,轉(zhuǎn)換成String類型后保存到輕量級存儲文件夾中的COUNTER內(nèi),為下次調(diào)用準備。
        在重置counter的程序中,將TextView中的值利用gettext()命令讀出,利用toString命令轉(zhuǎn)換成String類型后存儲在COUNTER中。對于輸入的整數(shù)值不能超過Long型整數(shù)的范圍,在存儲之前需要對輸入的整數(shù)進行相關(guān)判斷:將輸入的整數(shù)前面補零和2的64次方減一(18446744073709551615)進行字符串比較,如果輸入的整數(shù)大或者字符串長度超過20則提醒用戶輸入錯誤,重新輸入。
    posted @ 2010-11-23 12:17 趙朋川 閱讀(154) | 評論 (0)編輯 收藏
    僅列出標題  
    <2025年7月>
    293012345
    6789101112
    13141516171819
    20212223242526
    272829303112
    3456789

    常用鏈接

    留言簿

    隨筆檔案

    搜索

    •  

    最新評論

    閱讀排行榜

    評論排行榜

    主站蜘蛛池模板: 亚洲国产成人片在线观看| 亚洲av午夜福利精品一区| 亚洲天堂一区二区三区| 无码人妻一区二区三区免费n鬼沢| 国产精品亚洲综合专区片高清久久久 | 久久久亚洲欧洲日产国码二区| a毛片免费全部播放完整成| 亚洲熟妇无码AV在线播放| 国产精品内射视频免费| 亚洲熟妇无码八AV在线播放| 日韩精品无码免费专区午夜不卡| 亚洲综合伊人久久大杳蕉| aa毛片免费全部播放完整| 在线A亚洲老鸭窝天堂| 国产情侣久久久久aⅴ免费| 亚洲va无码手机在线电影| 久久99精品视免费看| 亚洲成a人片在线观看中文!!!| 成人免费观看一区二区| 亚洲精品成a人在线观看☆| 免费v片在线观看| aaa毛片视频免费观看| 亚洲综合激情九月婷婷| 成人免费在线观看网站| 久久无码av亚洲精品色午夜 | 亚洲精华国产精华精华液| 国产一级淫片视频免费看| 免费看黄网站在线看 | 国产成人亚洲精品无码AV大片| 亚洲精品国产日韩无码AV永久免费网| 国产免费拔擦拔擦8X高清在线人 | 午夜亚洲www湿好大| 一个人看www在线高清免费看| 久久亚洲AV成人无码国产最大| 国产成人麻豆亚洲综合无码精品| 免费人妻无码不卡中文字幕系| 亚洲性色精品一区二区在线| 亚洲AV无码专区日韩| 日本免费一区二区三区四区五六区 | 亚洲日本乱码一区二区在线二产线| 成年在线网站免费观看无广告|