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

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>
            亚洲国产乱码最新视频| 亚洲高清视频在线| 欧美一区二区三区日韩| 99国产精品久久久久久久成人热 | 亚洲欧美在线x视频| 亚洲少妇诱惑| 欧美亚洲自偷自偷| 美女免费视频一区| 最新亚洲视频| 一本色道久久88综合亚洲精品ⅰ| 一区二区免费在线观看| 亚洲视频在线一区观看| 欧美在线观看视频| 欧美激情第10页| 国产精品视频免费观看www| 国内自拍视频一区二区三区| 亚洲韩国精品一区| 亚洲欧美激情一区| 欧美高清视频免费观看| 日韩系列在线| 久久精品在线免费观看| 欧美日韩一区在线观看视频| 国模精品一区二区三区色天香| 亚洲国产三级| 欧美在线观看网站| 亚洲欧洲另类| 久久精品观看| 国产精品美女久久福利网站| 亚洲福利视频三区| 香蕉乱码成人久久天堂爱免费| 欧美va亚洲va国产综合| 亚洲综合国产| 欧美日本亚洲| 亚洲国产一区二区三区在线播| 欧美在线观看一区| 日韩视频一区二区三区| 六十路精品视频| 国外成人在线| 欧美一区二区在线免费观看| 亚洲美女黄网| 欧美激情麻豆| 香蕉久久一区二区不卡无毒影院| 久热精品视频在线免费观看 | 亚洲第一精品夜夜躁人人躁| 亚洲欧美激情四射在线日 | 欧美在线视频a| 亚洲三级色网| 免费观看亚洲视频大全| 国产一级揄自揄精品视频| 亚洲一级一区| 日韩亚洲精品电影| 欧美精品色综合| 亚洲国产专区校园欧美| 暖暖成人免费视频| 久久理论片午夜琪琪电影网| 韩国精品主播一区二区在线观看| 欧美一区二区视频在线| 午夜在线精品偷拍| 国产亚洲欧美日韩在线一区 | 一区二区三区波多野结衣在线观看| 免费成人av资源网| 久久久久在线| 在线日本高清免费不卡| 老色鬼久久亚洲一区二区| 久久久久国产一区二区三区四区 | 欧美一区二区三区四区在线观看地址 | 亚洲国产日韩一级| 欧美激情欧美狂野欧美精品| 麻豆亚洲精品| 9色精品在线| 99这里只有精品| 国产精品高潮久久| 久久精品日韩| 久热这里只精品99re8久| 亚洲欧洲一区二区在线观看| 亚洲美女黄色片| 国产精品毛片a∨一区二区三区| 性久久久久久久久| 久久久久久久高潮| 日韩系列在线| 亚洲一区不卡| 激情伊人五月天久久综合| 鲁大师成人一区二区三区| 欧美成在线视频| 亚洲神马久久| 欧美一区二区三区在| 亚洲国产精品久久人人爱蜜臀 | 欧美一区二区三区四区高清| 亚洲黄网站黄| 亚洲一区二区三区四区视频| 国产综合第一页| 亚洲肉体裸体xxxx137| 亚洲欧洲一区二区三区在线观看| 欧美日韩午夜视频在线观看| 欧美一区2区视频在线观看| 久久综合给合久久狠狠狠97色69| 一区二区成人精品| 久久精品72免费观看| 日韩亚洲综合在线| 久久电影一区| 亚洲午夜精品17c| 久热这里只精品99re8久| 亚洲网站在线观看| 久久综合久久综合这里只有精品 | 亚洲国产激情| 国内精品久久久久久| 99re这里只有精品6| 1769国内精品视频在线播放| 亚洲视频免费| 亚洲最新在线| 噜噜爱69成人精品| 久久精品国产欧美激情| 欧美三级韩国三级日本三斤| 欧美+亚洲+精品+三区| 国产毛片精品国产一区二区三区| 亚洲国产欧美另类丝袜| 国内精品久久久| 午夜久久tv| 亚洲免费小视频| 欧美日韩国产综合视频在线观看| 麻豆精品传媒视频| 国产视频在线一区二区| 亚洲一区二区三区免费观看 | 亚洲视频碰碰| 欧美高清视频一区二区| 免费在线欧美视频| 国产亚洲永久域名| 欧美一区二区三区免费观看| 欧美在线观看你懂的| 国产精品视频导航| 国产精品99久久久久久人| 99精品国产在热久久| 欧美激情一区三区| 亚洲激情在线观看视频免费| 亚洲欧洲一区二区在线观看| 欧美成人免费观看| 亚洲电影免费观看高清完整版在线观看 | 久久综合久久综合这里只有精品| 久久精品导航| 国产欧美日韩综合一区在线播放| 中文成人激情娱乐网| 亚洲一区二区在线视频| 欧美午夜精品一区二区三区| 亚洲精品国产精品国产自| av不卡在线| 国产精品第三页| 午夜精品久久久久久久99樱桃| 久久国产婷婷国产香蕉| 狠狠色狠狠色综合日日91app| 久久视频一区| 亚洲日本中文字幕| 亚洲视频一区二区免费在线观看| 亚洲素人一区二区| 亚洲欧美激情诱惑| 国产在线精品一区二区中文| 久久精品亚洲| 91久久中文字幕| 亚洲男人第一网站| 国产亚洲一级| 欧美成人国产一区二区| 一本一本大道香蕉久在线精品| 欧美一区二区三区精品电影| 永久免费精品影视网站| 欧美精品高清视频| 午夜免费日韩视频| 亚洲高清资源| 香蕉免费一区二区三区在线观看| 又紧又大又爽精品一区二区| 欧美日韩亚洲成人| 久久国产直播| 日韩手机在线导航| 久久久久久久综合色一本| 亚洲国产精品一区二区尤物区| 欧美日韩国产精品| 欧美一区日韩一区| 亚洲日本成人在线观看| 久久精品国产精品亚洲精品| 在线亚洲一区观看| 永久域名在线精品| 国产精品成人一区二区三区夜夜夜| 久久久国产精品一区二区中文 | 一区二区三区成人精品| 久久久免费av| 亚洲欧美国内爽妇网| 亚洲国产精品一区二区第四页av| 国产精品激情av在线播放| 免费看成人av| 久久成人免费电影| 一本色道久久综合精品竹菊 | 欧美一区二区三区视频| 99精品久久久| 伊人一区二区三区久久精品| 国产精品男女猛烈高潮激情| 欧美精品在线视频观看| 久久综合久久综合九色| 久久精品日韩欧美| 午夜一区二区三视频在线观看| 亚洲视频在线播放| 亚洲免费成人av| 91久久久久|