當前位置:首頁 » 安卓系統 » android時間同步

android時間同步

發布時間: 2024-06-20 22:51:46

⑴ 如何用android開發otp

otp從技術來分有三種形式, 時間同步、事件同步、挑戰/應答。
(1) 時間同步
原理是基於 動態令牌和 動態口令驗證伺服器的時間比對,基於 時間同步的 令牌,一般每60秒產生一個新口令,要求伺服器能夠十分精確的保持正確的時鍾,同時對其令牌的晶振頻率有嚴格的要求,這種技術對應的終端是硬體令牌。
(2)事件同步
基於事件同步的令牌,其原理是通過某一特定的事件次序及相同的種子值作為輸入,通過HASH演算法中運算出一致的密碼。
(3)挑戰/應答
常用於的網上業務,在網站/應答上輸入 服務端下發的 挑戰碼, 動態令牌輸入該挑戰碼,通過內置的演算法上生成一個6/8位的隨機數字,口令一次有效,這種技術目前應用最為普遍,包括刮刮卡、簡訊密碼、動態令牌也有挑戰/應答形式。

主流的動態令牌技術是時間同步和挑戰/應答兩種形式。
項目採用:
https://code.google.com/p/androidtoken/ 實現TOTP動態口令登錄
android token 該項目支持HOTP (事件令牌)和TOTP (時間令牌)規范
配置令牌支持:KeyUriFormat和QR碼,以及手動創建;

項目實現:
我這里採用添加方便的qr碼,也就是常見的二維碼來實現用戶通過手機來綁定一個token;
首先,需要有的就是伺服器端和客戶端都共有的一個seed。

private final static String NUM_CHAR = "0123456789";

private static int charLen = NUM_CHAR.length();

/**

* 根據系統時間獲得指定位數的隨機數

* @param randomNumberDigit 隨機數的位數

* @return 獲得的隨機數

*/

public static String getRandomNumber(int randomNumberDigit) {

long seed = System.currentTimeMillis();// 獲得系統時間,作為生成隨機數的種子

StringBuffer sb = new StringBuffer();// 裝載生成的隨機數

Random random = new Random(seed);// 調用種子生成隨機數

for (int i = 0; i < randomNumberDigit; i++) {

sb.append(NUM_CHAR.charAt(random.nextInt(charLen)));

}

return sb.toString();

}

⑵ android系統怎麼同步網路時間

進入設置,點擊時間設置,選擇網路提供的時間。

先設置手機時間同步,打開設置中心(以紅米手機MIUI 8系統為例)。

選擇更多設置(以紅米手機MIUI 8系統為例,其它手機系統位置不同),點擊日期和時間。

選中自動確定日期和時間,自動確定時區,選擇24小時格式,設置完成。

電腦設置時間步驟:XP和WIN系統時間顯示位置相同,電腦任務欄最右側,雙擊時間(以XP系統設置為例)

打開日期和時間屬性面板,點擊Internet 時間選項。

勾選與internet時間伺服器同步,選擇任何一個伺服器都可以。

選擇time.windows.com伺服器,點擊立即更新。電腦時間同步完成。

熱點內容
我的世界伺服器登陸插件 發布:2025-10-18 23:22:15 瀏覽:390
解壓清潔耳朵 發布:2025-10-18 23:21:58 瀏覽:979
linux訪問samba伺服器 發布:2025-10-18 23:10:08 瀏覽:814
查找替換linux 發布:2025-10-18 23:09:51 瀏覽:237
短片拍攝腳本 發布:2025-10-18 22:53:23 瀏覽:895
摩爾庄園蘋果和安卓如何加好友 發布:2025-10-18 22:50:03 瀏覽:128
ftp站點目錄 發布:2025-10-18 22:42:55 瀏覽:573
端子壓縮機 發布:2025-10-18 22:34:30 瀏覽:170
賓士威霆裸車買哪個配置 發布:2025-10-18 22:14:42 瀏覽:377
mysql搭建到伺服器 發布:2025-10-18 22:13:38 瀏覽:276