lmc999 / RegionRestrictionCheck

A bash script to check the status of your IP on various geo-restricted services.
GNU Affero General Public License v3.0
3.95k stars 536 forks source link

Fix navertv 修复韩国板块的navertv检测 #125

Closed koipy-org closed 3 months ago

koipy-org commented 3 months ago

修复逻辑:

  1. 当前时间戳 ts、基础 URL base_url、hamc算法的加密密钥 key、待签名的字符串 sign_text
  2. 使用 openssl 命令根据 sign_text 和 key 计算 HMAC-SHA1 签名 signature,意味着需要安装openssl,这个大部分发行版自带,但是termux这种应该不行。
  3. 将 signature签名后的字符串进行 Base64 编码并进行 URL 编码, 得到 signature_encoded。
  4. 构建最终的请求 URL:req_url, 包含了时间戳和编码后的签名。
  5. 使用 curl 命令发送 GET 请求到 req_url。
  6. 使用 python 的json解析工具 json.tool 从 tmpresult 中提取 playable 字段的值。
  7. 根据 playable的值判断是否解锁成功。如果值为 "NOT_COUNTRY_AVAILABLE",则输出 "No",否则输出 "Yes"。

本人不太会写bash的东西,那个url编码是gpt弄的,如果不严谨还请提出建议。