ipa-resign 0.0.5 → 0.0.7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +47 -0
- package/README.md +22 -18
- package/assets/anisette/anisette_rs.js +557 -541
- package/assets/anisette/anisette_rs.wasm +0 -0
- package/assets/anisette/dist/anisette.d.ts +7 -0
- package/assets/anisette/dist/anisette.d.ts.map +1 -1
- package/assets/anisette/dist/anisette.js +32 -4
- package/assets/anisette/dist/anisette.js.map +1 -1
- package/assets/anisette/dist/anisette_rs.js +604 -841
- package/assets/anisette/dist/anisette_rs.node.js +539 -833
- package/assets/anisette/dist/anisette_rs.wasm +0 -0
- package/assets/anisette/dist/package.json +3 -0
- package/assets/zsign/zsign-wasm.min.js +27154 -27039
- package/dist/THIRD-PARTY-LICENSES.txt +1 -1
- package/dist/anisette-browser/index.d.ts +26 -0
- package/dist/anisette-browser/index.js +1 -452
- package/dist/browser/index.js +1 -554
- package/dist/core/index.js +1 -1302
- package/dist/index.js +1 -2
- package/dist/index.mjs +1 -2
- package/dist/sign-browser/index.js +2 -18313
- package/package.json +6 -6
- package/assets/anisette/dist/unified-wasm-loader.d.ts +0 -47
- package/assets/anisette/dist/unified-wasm-loader.d.ts.map +0 -1
- package/assets/anisette/dist/unified-wasm-loader.js +0 -77
- package/assets/anisette/dist/unified-wasm-loader.js.map +0 -1
- package/dist/index.jsc +0 -0
package/LICENSE
ADDED
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
Copyright (c) 2026 650 Industries, Inc. All rights reserved.
|
|
2
|
+
|
|
3
|
+
PROPRIETARY SOFTWARE LICENSE
|
|
4
|
+
|
|
5
|
+
This software, including the package published as "ipa-resign" and all of its
|
|
6
|
+
source code, compiled bundles, native helper binaries, and accompanying files
|
|
7
|
+
(the "Software"), is the confidential and proprietary property of 650
|
|
8
|
+
Industries, Inc. ("650 Industries").
|
|
9
|
+
|
|
10
|
+
1. No license granted. No license or right to the Software is granted to you,
|
|
11
|
+
whether by implication, estoppel, or otherwise, except under a separate
|
|
12
|
+
written agreement signed by 650 Industries. Absent such an agreement, you may
|
|
13
|
+
not use, copy, install, execute, or retain the Software.
|
|
14
|
+
|
|
15
|
+
2. Restrictions. You may not, and may not permit any third party to:
|
|
16
|
+
(a) reverse engineer, decompile, disassemble, deobfuscate, or otherwise
|
|
17
|
+
attempt to derive the source code, structure, algorithms, or protocols of
|
|
18
|
+
the Software, in whole or in part;
|
|
19
|
+
(b) copy, distribute, republish, sublicense, sell, rent, lease, or otherwise
|
|
20
|
+
make the Software available to any third party;
|
|
21
|
+
(c) modify, adapt, translate, or create derivative works of the Software; or
|
|
22
|
+
(d) remove, obscure, or alter any proprietary notice in the Software.
|
|
23
|
+
|
|
24
|
+
Any circumvention or attempted circumvention of the technical protection
|
|
25
|
+
measures in the Software (including its obfuscation) is a material breach of
|
|
26
|
+
this license and may violate applicable law.
|
|
27
|
+
|
|
28
|
+
3. Third-party components. The Software bundles third-party open-source
|
|
29
|
+
components that remain licensed under their own respective terms. Those terms,
|
|
30
|
+
and the required copyright and permission notices, are reproduced in
|
|
31
|
+
dist/THIRD-PARTY-LICENSES.txt. Nothing in this license limits your rights, or
|
|
32
|
+
enlarges your obligations, under those third-party licenses with respect to
|
|
33
|
+
those components. The restrictions in Section 2 apply only to the proprietary
|
|
34
|
+
portions of the Software authored by 650 Industries.
|
|
35
|
+
|
|
36
|
+
4. Reservation of rights. All rights not expressly granted are reserved by 650
|
|
37
|
+
Industries. This license does not transfer any ownership, title, or
|
|
38
|
+
intellectual property right in the Software.
|
|
39
|
+
|
|
40
|
+
5. No warranty. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
|
|
41
|
+
EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
|
|
42
|
+
MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, AND NONINFRINGEMENT.
|
|
43
|
+
|
|
44
|
+
6. Limitation of liability. IN NO EVENT SHALL 650 INDUSTRIES BE LIABLE FOR ANY
|
|
45
|
+
CLAIM, DAMAGES, OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT, OR
|
|
46
|
+
OTHERWISE, ARISING FROM, OUT OF, OR IN CONNECTION WITH THE SOFTWARE OR THE USE
|
|
47
|
+
OR OTHER DEALINGS IN THE SOFTWARE.
|
package/README.md
CHANGED
|
@@ -81,9 +81,10 @@ The protocol is transport-agnostic — it depends only on a small injected `Plat
|
|
|
81
81
|
- **`ipa-resign/sign-browser`** — browser-side IPA re-signing via zsign compiled to WASM
|
|
82
82
|
(the `zsign-wasm` package; its glue is served same-origin by the host app). Browser-only; the web
|
|
83
83
|
counterpart to the Node `zsign` binary path.
|
|
84
|
-
- **`ipa-resign/assets/anisette`** — the
|
|
85
|
-
|
|
86
|
-
|
|
84
|
+
- **`ipa-resign/assets/anisette`** — the anisette ADI emulator (Rust→WASM + a TS API) the
|
|
85
|
+
browser generator fetches at runtime. Built from the source under `anisette/wasm/` (not
|
|
86
|
+
committed — run `yarn build:anisette`, or the release workflow rebuilds it before publishing;
|
|
87
|
+
see [RELEASING.md](RELEASING.md)). The web app syncs it into its `public/`.
|
|
87
88
|
|
|
88
89
|
Internally the Node protocol modules (`src/auth/gsa.ts`, `src/devPortal.ts`, `src/auth/srp.ts`,
|
|
89
90
|
`src/sign/csr.ts`) are thin adapters that wrap `core` with the Node `Platform` (`src/platform.ts`)
|
|
@@ -95,33 +96,36 @@ and re-wrap bytes as `Buffer` for the CLI. Full design:
|
|
|
95
96
|
|
|
96
97
|
```bash
|
|
97
98
|
yarn install
|
|
98
|
-
yarn build # dist/:
|
|
99
|
+
yarn build # dist/: obfuscated CLI bundle (index.js) + the ipa-resign/core and
|
|
99
100
|
# ipa-resign/anisette-browser subpath builds + bundled .d.ts
|
|
100
101
|
```
|
|
101
102
|
|
|
102
|
-
`yarn build` is platform-agnostic — it
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
103
|
+
`yarn build` is platform-agnostic — it bundles TypeScript (via esbuild) and runs each
|
|
104
|
+
bundle through `javascript-obfuscator` (`scripts/obfuscate.mjs`). It runs several
|
|
105
|
+
steps: the obfuscated CLI build, then `build:core`, `build:anisette-browser`,
|
|
106
|
+
`build:sign-browser`, and `build:browser` (the browser-consumable subpaths, which you
|
|
107
|
+
can also run on their own). The native helper binaries are built separately because
|
|
108
|
+
they require platform-specific toolchains:
|
|
106
109
|
|
|
107
110
|
```bash
|
|
108
111
|
# Build the macOS anisette helper (only works on macOS — needs swiftc, i.e. Xcode CLT).
|
|
109
112
|
# Produces bin/anisette as a universal arm64 + x86_64 Mach-O.
|
|
110
113
|
yarn build:helper:macos
|
|
111
114
|
|
|
112
|
-
#
|
|
113
|
-
#
|
|
114
|
-
#
|
|
115
|
-
|
|
116
|
-
yarn build:helper:rust
|
|
115
|
+
# Rebuild the anisette WASM assets (assets/anisette/) from the anisette/wasm
|
|
116
|
+
# source. This is the Windows/Linux anisette provider. Needs emsdk + Rust nightly
|
|
117
|
+
# + the Unicorn fork; the release workflow runs it. See RELEASING.md.
|
|
118
|
+
yarn build:anisette
|
|
117
119
|
```
|
|
118
120
|
|
|
119
121
|
End users installing the package via npm don't run any of the helper scripts —
|
|
120
|
-
the published package ships the macOS
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
122
|
+
the published package ships the macOS binary (`bin/anisette` for OTP headers) and
|
|
123
|
+
`bin/zsign` for code signing, plus the anisette WASM assets. **Anisette** uses the
|
|
124
|
+
native Swift helper on macOS and the anisette WASM emulator
|
|
125
|
+
(`src/auth/anisette-wasm.ts`, running the `assets/anisette/` build) on Windows and
|
|
126
|
+
Linux — no native helper is cross-compiled anymore. **Code signing** on Windows and
|
|
127
|
+
Linux uses the WASM subpath exports (`ipa-resign/sign-browser`). `src/auth/anisette.ts`
|
|
128
|
+
and `src/sign/codesign.ts` pick the right path at runtime by inspecting
|
|
125
129
|
`process.platform` + `process.arch`.
|
|
126
130
|
|
|
127
131
|
Releasing a new version: see [RELEASING.md](./RELEASING.md).
|