ios动态口令的生成。(TOTP算法)

1.动态口令的生成,现在都是基于谷歌的开源。具体的实现可以参考这个链接。https://www.jianshu.com/p/4517d3a8dfcd。说明的很详细。

2.但是做到这一步,发现还是和后台的有出入,是因为后台给我门的screet是经过base32

编码过的,需要我们转码,才能实现和后台一样。

3.具体如下:

static NSString *const kBase32Charset = @"ABCDEFGHIJKLMNOPQRSTUVWXYZ234567";

staticNSString*constkBase32Synonyms =

@"AaBbCcDdEeFfGgHhIiJjKkLlMmNnOoPpQqRrSsTtUuVvWwXxYyZz";

staticNSString*constkBase32Sep =@" -";

- (NSData*)base32Decode:(NSString*)string {

    GTMStringEncoding *coder =

    [GTMStringEncoding stringEncodingWithString:kBase32Charset];

    [coderaddDecodeSynonyms:kBase32Synonyms];

    [coderignoreCharacters:kBase32Sep];

    return[coderdecode:string];

}



4.这个GTMStringEncoding文件需要我们去下载谷歌开源代码。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 1、通过CocoaPods安装项目名称项目信息 AFNetworking网络请求组件 FMDB本地数据库组件 SD...
    阳明AI阅读 16,040评论 3 119
  • 1.ios高性能编程 (1).内层 最小的内层平均值和峰值(2).耗电量 高效的算法和数据结构(3).初始化时...
    欧辰_OSR阅读 29,831评论 8 265
  • 五颜六色的纸片脱离了黑色,展现着独特的颜色。五颜六色的花瓣脱离了花蕾,凋谢时换得了怜悯。五颜六色的彩虹脱离了天空,...
    bo_ss阅读 1,358评论 0 0
  • 人生最美是军旅,当兵后悔两年,不当兵后悔一辈子。也许是大部份参军的的感悟吧,当时隔多年后,不管他现在在干什么,保安...
    晟妹你好阅读 1,683评论 0 1
  • 什么是生?什么是死?生就生活存在,死就是死亡消失。人的一生从出生开始,到死亡结束,开始和结局都是一样的,不...
    黯西先生阅读 17,600评论 3 17