青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

Benjamin

靜以修身,儉以養德,非澹薄無以明志,非寧靜無以致遠。
隨筆 - 398, 文章 - 0, 評論 - 196, 引用 - 0
數據加載中……

中宣部防沉迷系統python版本

import json
from Crypto.Cipher import AES
import base64
import requests
import hashlib
import time
import os
import binascii
URL = "https://wlc.nppa.gov.cn/test/authentication/check"  #接口調用地址(實名認證)
KEY = "d10d8642c66c1c785aa32b194aba2afa"                   #訪問密鑰                     
APPID = "9177929f5010481b858f661a409fd764"                 #接口調用唯一憑證 由系統發放
BIZID = "1101999999"                                       #業務權限標識 與游戲備案識別碼一致
#測試用例
TEST_PARAMS = {"ai":"100000000000000001",
"name":"某一一",
"idNum":"110000190101010001"}
class AES_GCM(object):
    def __init__(self, key):
        self.key = key  #秘鑰
        self.MODE = AES.MODE_GCM
        self.iv = os.urandom(12)
    def aes_encrypt(self, params):
        aes = AES.new(binascii.unhexlify(self.key), self.MODE, self.iv)
        params, tag=aes.encrypt_and_digest(json.dumps(params).encode("utf-8"))
        base64_data= self.iv + params + tag
        encrypted_text = str(base64.b64encode(base64_data), encoding='utf-8')
        return encrypted_text
    def aes_decrypt(self, encrypted_text):
        encrypted_text = base64.b64decode(encrypted_text)
        cipher = AES.new(binascii.unhexlify(self.key), self.MODE, encrypted_text[:12])
        cc = cipher.decrypt_and_verify(encrypted_text[12:-16], encrypted_text[-16:])
        return json.loads(cc)
def hash256(pre_hash_text):
    hs256 = hashlib.sha256()
    hs256.update(pre_hash_text.encode())
    return hs256.hexdigest()
def sorted_params(params, param_="%s%s", none_keys = []):
    return "".join([
            param_ % i for i in
            sorted(params.items(), key=lambda d:d[0]) if i[0] not in none_keys
            ])
def main():
    aesobject = AES_GCM(KEY)
    _time = str(int(time.time() * 1000))
    #############上報用戶行為(上線 下線),直接替換TEST_PARAMS 接口調用地址 http:// api2.wlc.nppa.gov.cn/behavior/collection/loginout  實名認證接結果查詢接口http:// api2.wlc.nppa.gov.cn/idcard/authentication/query
    #no:[條目編碼]在批量模式中標識一條行為數據,取值范圍 1-128
    #si:[游戲內部會話標識]一個會話標識只能對應唯一的實名用戶,一個實名用戶可以擁有多個會話標識;同一用戶單次游戲會話中,上下線動作必須使用同一會話標識上報備注:
    #                  會話標識僅標識一次用戶會話,生命周期僅為一次上線和與之匹配的一次下線,不會對生命周期之外的任何業務有任何影響
    #bt:[用戶行為類型]游戲用戶行為類型0:下線,1:上線
    #ot:[行為發生時間]行為發生時間戳,單位秒
    #ct:[上報類型]用戶行為數據上報類型,0:已認證通過用戶,2:游客用戶
    #di:[設備標識]游客模式設備標識,由游戲運營單位生成,游客用戶下必填
    #pi:[用戶唯一標識]已通過實名認證用戶的唯一標識,已認證通過用戶必填 由38位的字符串構成,其中包括用戶出生日期和用戶編碼兩部分。用戶出生日期以26進制(10個數字+英文字母表前16個字母)的方式編碼,位于用戶唯一標識前6位;用戶編碼由網絡游戲防沉迷實名認證系統生成,位于用戶唯一標識的后32位。
    #   例如:用戶唯一標識 1hpfml09b57f3f8185f8cb5094ea3f26278efb 用戶生日部分是1hpfml 用戶編碼部分是09b57f3f8185f8cb5094ea3f26278efb 
    player_data = {'collections':[{"no":1,"si":"w7ligxjw355ftctm94yqt9dcew4zd723","bt":0,"ot":_time,"ct":0,"di":"uyiv6clpf7cu296pd4ppv11le820dhkw","pi":"1fffbjzos82bs9cnyj1dna7d6d29zg4esnh99u"}]}
    ##############
    aes_gcm = aesobject.aes_encrypt(TEST_PARAMS)
    body_data='{"data":"%s"}' % aes_gcm  ## 國家游戲防沉迷的api試了不能進行json.dumps()
    ## 加入請求頭報文
    headers = {"Content-Type":"application/json; charset=utf-8","appId":APPID,"bizId":BIZID,"timestamps":_time}
    ## 對請求頭報文排序并排除 不必要的字段進行字符串拼接
    params_str = sorted_params(headers, none_keys=["Content-Type"])
    headers["sign"] = hash256("".join([KEY, params_str, body_data]))
    # print(aesobject.aes_decrypt(aes_gcm)) ## 解碼
    response = requests.post(URL, headers=headers, data= body_data)
    print(response.json())
if __name__ == '__main__':
    main()
    
附錄:  響應參數 
字段                  類型       名稱             字段說明 
errcode               Int       狀態碼             狀態碼 
errmsg                String    狀態描述           狀態描述 
data                  Object    響應對象          響應結果 
data.result           Object    響應結果對象      響應結果內容 
data.result.status    Int       實名認證結果      認證結果 0:認證成功 1:認證中  2:認證失敗 
data.result.pi       String     用戶唯一標識      已通過實名認證用戶的唯一標識
    
接口返回狀態碼
狀態碼               狀態描述           狀態說明 
0                     OK                請求成功
1001                SYS ERROR           系統錯誤 
1002      SYS REQ RESOURCE NOT EXIST    接口請求的資源不存在 
1003        SYS REQ METHOD ERROR        接口請求方式錯誤 
1004      SYS REQ HEADER MISS ERROR     接口請求核心參數缺失 
1005      SYS REQ IP ERROR              接口請求IP地址非法 
1006      SYS REQ BUSY ERROR            接口請求超出流量限制 
1007      SYS REQ EXPIRE ERROR          接口請求過期 
1008      SYS REQ PARTNER ERROR         接口請求方身份非法 
1009      SYS REQ PARTNER AUTH DISABLE  接口請求方權限未啟用 
1010        SYS REQ AUTH ERROR          接口請求方無該接口權限 
1011      SYS REQ PARTNER AUTH ERROR    接口請求方身份核驗錯誤 
1012      SYS REQ PARAM CHECK ERROR     接口請求報文核驗失敗
實名認證業務異常
2001      BUS AUTH IDNUM ILLEGAL        身份證號格式校驗失敗 
2002      BUS AUTH RESOURCE LIMIT       實名認證條目已達上限 
2003      BUS AUTH CODE NO AUTH RECODE  無該編碼提交的實名認證記錄 
2004      BUS AUTH CODE ALREADY IN USE  編碼已經被占用
游戲用戶行為數據上報業務異常 
3001     BUS COLL PARTIAL ERROR         行為數據部分上報失敗 
3002     BUS COLL BEHAVIOR NULL ERROR   行為數據為空 
3003     BUS COLL OVER LIMIT COUNT      行為數據超出條目數量限制 
3004     BUS COLL NO INVALID            行為數據編碼錯誤 
3005     BUS COLL BEHAVIOR TIME ERROR   行為發生時間錯誤 
3006     BUS COLL PLAYER MODE INVALID   用戶類型無效 
3007     BUS COLL BEHAVIOR MODE INVALID 行為類型無效 
3008     BUS COLL PLAYERID MISS         缺失PI(用戶唯一標識)值 
3009     BUS COLL DEVICEID MISS         缺失DI(設備標識)值 3
010      BUS COLL PLAYERID INVALID PI (用戶唯一標識)值無效

posted on 2021-08-28 10:52 Benjamin 閱讀(4774) 評論(0)  編輯 收藏 引用 所屬分類: python

青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            亚洲夫妻自拍| 久久久久五月天| 国产精品视频免费| 欧美色另类天堂2015| 欧美美女bbbb| 国产精品免费网站| 国产婷婷精品| 一区福利视频| 999亚洲国产精| 亚洲影院在线观看| 久久精品av麻豆的观看方式 | 性欧美8khd高清极品| 欧美一级电影久久| 免费观看不卡av| 亚洲精品午夜| 欧美在线视频观看免费网站| 久久青草欧美一区二区三区| 欧美精品激情在线| 国产午夜精品麻豆| 一本久道久久综合中文字幕 | 韩国成人理伦片免费播放| 亚洲国产mv| 亚洲主播在线| 欧美激情免费在线| 亚洲欧美伊人| 欧美人成在线| 亚洲国产成人高清精品| 亚洲欧美日韩精品在线| 欧美激情女人20p| 欧美一级黄色网| 欧美三级在线播放| 亚洲黄色一区二区三区| 香蕉免费一区二区三区在线观看| 欧美大片一区二区| 欧美一区二区黄| 欧美午夜精品久久久久久人妖| 曰韩精品一区二区| 久久大香伊蕉在人线观看热2| 亚洲蜜桃精久久久久久久 | 国产精品久久久久毛片大屁完整版| 亚洲电影免费观看高清| 欧美一区午夜精品| 一二美女精品欧洲| 欧美日韩视频在线| 美女网站在线免费欧美精品| 亚洲午夜免费视频| 亚洲国产精品久久久| 亚洲一区二区三区四区在线观看| 欧美91福利在线观看| 在线观看日韩专区| 毛片基地黄久久久久久天堂| 香蕉久久夜色精品国产| 国产精品久久久久久久电影| 一区二区三区高清视频在线观看 | 亚洲激情二区| 欧美肥婆在线| 久久亚洲一区二区| 亚洲高清色综合| 欧美大片第1页| 久久综合狠狠综合久久激情| 在线观看国产日韩| 欧美韩日一区二区三区| 玖玖在线精品| 91久久精品国产91久久| 欧美激情欧美激情在线五月| 欧美成年人视频网站| 9人人澡人人爽人人精品| 亚洲精品在线视频观看| 欧美视频三区在线播放| 亚洲欧美日韩精品久久| 亚洲欧美视频一区二区三区| 国产一区av在线| 免费亚洲网站| 欧美极品在线视频| 亚洲永久在线观看| 午夜精品久久99蜜桃的功能介绍| 国产婷婷精品| 女女同性精品视频| 欧美日韩国产高清| 欧美在线日韩精品| 老色鬼久久亚洲一区二区 | 一区二区三区日韩欧美| 一区二区成人精品| 国产一区二区三区奇米久涩 | 欧美成人精品福利| 欧美日韩亚洲一区在线观看| 欧美一区二区三区另类| 久久久亚洲精品一区二区三区 | 亚洲一区二区在线播放| 伊人天天综合| 一区二区三区四区五区视频| 国产视频一区在线观看一区免费| 麻豆精品视频| 欧美日韩一区二区在线视频| 久久久久久亚洲精品杨幂换脸| 久久久久亚洲综合| 宅男精品视频| 久久亚洲私人国产精品va| 小辣椒精品导航| 久久精品1区| 蜜臀va亚洲va欧美va天堂| 亚洲视频一二区| 久久久噜久噜久久综合| 亚洲图片欧美日产| 久久男人资源视频| 亚洲欧美在线网| 欧美风情在线| 久久亚洲精品一区二区| 欧美日韩一区二区三| 欧美二区在线| 一区二区在线不卡| 亚洲女优在线| 亚洲神马久久| 欧美激情1区2区3区| 裸体一区二区三区| 国产婷婷97碰碰久久人人蜜臀| 日韩视频免费| 99re6这里只有精品| 蜜桃av综合| 蜜桃av一区二区在线观看| 国产欧美亚洲精品| 亚洲在线免费观看| 亚洲欧美日韩成人| 国产精品久久久久久模特| av不卡在线观看| 亚洲视频一区二区在线观看| 欧美大片va欧美在线播放| 欧美成人69av| 亚洲国产欧美在线人成| 久久伊伊香蕉| 欧美国产日韩在线| 亚洲国产精品久久久久秋霞影院 | 亚洲黄色在线| 亚洲国产综合91精品麻豆| 久久久99精品免费观看不卡| 久久久久久噜噜噜久久久精品| 国产日韩欧美一区| 性欧美videos另类喷潮| 久久久久国产精品www| 国产日韩欧美a| 亚洲欧美在线另类| 久久免费精品视频| 在线日韩av片| 欧美激情va永久在线播放| 欧美激情一区二区久久久| 亚洲激情自拍| 欧美日韩国产在线| 亚洲视频在线观看三级| 校园激情久久| 在线免费观看日本一区| 欧美成人午夜激情视频| 亚洲美女色禁图| 欧美一进一出视频| 亚洲国产精品久久| 欧美激情1区2区3区| 久久久99久久精品女同性| 久久久国产91| 亚洲国产专区校园欧美| 欧美日韩久久不卡| 亚洲欧美久久| 免费不卡亚洲欧美| 亚洲欧美日韩直播| 亚洲第一精品夜夜躁人人爽| 欧美www在线| 一个色综合导航| 免费亚洲婷婷| 亚洲欧美日韩爽爽影院| 精久久久久久| 欧美视频三区在线播放| 久久精品99国产精品| 亚洲国产精品高清久久久| 亚洲永久精品国产| 在线日韩av永久免费观看| 欧美色播在线播放| 久久婷婷成人综合色| 亚洲一级黄色| 亚洲国产精品久久久久秋霞影院| 亚洲综合首页| 亚洲国产精品久久久久婷婷884| 欧美无乱码久久久免费午夜一区| 久久久久这里只有精品| 亚洲视频精选| 最近看过的日韩成人| 久久视频一区| 午夜在线电影亚洲一区| 亚洲精品综合| 亚洲高清久久网| 国产一区二区三区在线免费观看| 欧美日韩高清在线| 久久综合久久美利坚合众国| 亚洲欧美在线免费观看| 99精品国产福利在线观看免费 | 夜夜精品视频| 亚洲国产aⅴ天堂久久| 久久久爽爽爽美女图片| 午夜一区二区三区不卡视频| 一本一本a久久| 亚洲人精品午夜在线观看| 在线观看av一区| 黄色在线一区|