This commit is contained in:
5ec1cff
2024-08-18 23:07:48 +08:00
commit 9b28661fee
4 changed files with 101 additions and 0 deletions

81
README.md Normal file
View File

@@ -0,0 +1,81 @@
# Tricky Store
A trick of keystore. **Android 12 or above is required**.
This module is used for modifying the certificate chain generated for android key attestation.
## Stop opening source / 停止开源
Due to the rampant misuse and the contributions received after open-sourcing being less than expected, this module will be closed-source starting from version 1.1.0.
考虑到二改泛滥,且开源后获得的贡献少于预期,因此本模块自 1.1.0 版本起闭源发布。
## Usage
1. Flash this module and reboot.
2. For more than DEVICE integrity, put an unrevoked hardware keybox.xml at `/data/adb/tricky_store/keybox.xml` (Optional).
3. Customize target packages at `/data/adb/tricky_store/target.txt` (Optional).
4. Enjoy!
**All configuration files will take effect immediately.**
## keybox.xml
format:
```xml
<?xml version="1.0"?>
<AndroidAttestation>
<NumberOfKeyboxes>1</NumberOfKeyboxes>
<Keybox DeviceID="...">
<Key algorithm="ecdsa|rsa">
<PrivateKey format="pem">
-----BEGIN EC PRIVATE KEY-----
...
-----END EC PRIVATE KEY-----
</PrivateKey>
<CertificateChain>
<NumberOfCertificates>...</NumberOfCertificates>
<Certificate format="pem">
-----BEGIN CERTIFICATE-----
...
-----END CERTIFICATE-----
</Certificate>
... more certificates
</CertificateChain>
</Key>...
</Keybox>
</AndroidAttestation>
```
## Support TEE broken devices
Tricky Store will hack the leaf certificate by default.
On TEE broken devices, this will not work because we can't retrieve the leaf certificate from TEE.
In this case, we fallback to use generate key mode automatically.
You can add a `!` after a package name to force use generate certificate support for this package.
Also, you can add a `?` after a package name to force use leaf hack mode for this package.
For example:
```
# target.txt
# use auto mode for KeyAttestation App
io.github.vvb2060.keyattestation
# always use leaf hack mode
io.github.vvb2060.mahoshojo?
# always use certificate generating mode for gms
com.google.android.gms!
```
## TODO
- [Support Android 11 and below.](https://github.com/5ec1cff/TrickyStore/issues/25#issuecomment-2250588463)
## Acknowledgement
- [FrameworkPatch](https://github.com/chiteroman/FrameworkPatch)
- [BootloaderSpoofer](https://github.com/chiteroman/BootloaderSpoofer)
- [KeystoreInjection](https://github.com/aviraxp/Zygisk-KeystoreInjection)
- [LSPosed](https://github.com/LSPosed/LSPosed)

1
_config.yml Normal file
View File

@@ -0,0 +1 @@
theme: jekyll-theme-slate

13
changelog.md Normal file
View File

@@ -0,0 +1,13 @@
# 1.1.0
- 支持自动选择工作模式,无需手动添加感叹号(详见安装包内 README.md
- 支持模拟更多密钥操作可通过一些特殊验证如小布建议请手动添加包名com.coloros.sceneservice
- 支持 app attest key
- 移除 prop 修改(spoof_build_vars)功能
- 大量代码重构,提升安全性和稳定性
- Supports automatic mode selection, no need for manualy adding ! (See README.md in the zip)
- Supports emulating more key operations, passes some special attestations.
- Supports app attest key.
- Removes prop modification (spoof_build_vars) feature.
- Massive code refactoring to enhance security and stability.

6
update.json Normal file
View File

@@ -0,0 +1,6 @@
{
"versionCode": 108,
"version": "v1.1.0",
"zipUrl": "https://github.com/5ec1cff/TrickyStore/releases/download/1.1.0/Tricky-Store-v1.1.0-108-9bf78c0-release.zip",
"changelog": "https://github.com/5ec1cff/TrickyStore/raw/release/changelog.md"
}