PII2PW: Personal Information to Password Wordlists
Abstract.We evaluate PII2PW, a rule-based targeted password guessing tool for Chinese users, against CUPP (the de-facto standard) and published results from six academic papers spanning CCS 2016 to S&P 2025. Using five standard profiles and a 200-record synthetic PII–password paired dataset modelled after real Chinese password patterns (Li, Wang & Sun, INFOCOM 2016), we measure generation performance, PII embedding rate, dataset hit rate, and Success Rate @ N. PII2PW reaches 97.5% coverage and SR@100 = 46.5% on this set, generating 6× faster than CUPP with zero training data, GPU, or external dependencies. Because the paired set is synthetic and shares its assumptions with the rule engine, these absolute values are optimistic and are not comparable with the academic baselines below — see the fair-comparison caveat in §6.
1.Key Results
2.Generation Performance
We measure password generation throughput across five standard benchmark profiles — three Chinese (zh_full, zh_minimal, zh_medium) and two English (en_full, en_minimal). All measurements are wall-clock on a single CPU thread.
| Profile | Tool | Passwords | Time (s) | Passwords / s |
|---|---|---|---|---|
| zh_full | CUPP | 28,647 | 0.072 | 396,071 |
| PII2PW | 17,100 | 0.007 | 2,382,811 | |
| PassLLM | 2,133 | 44.451 | 48 | |
| bopscrk | 19,675 | 1.056 | 18,623 | |
| zh_minimal | CUPP | 5,246 | 0.026 | 202,408 |
| PII2PW | 7,198 | 0.004 | 1,792,365 | |
| PassLLM | 2,177 | 35.419 | 61 | |
| bopscrk | 1,576 | 0.906 | 1,739 | |
| zh_medium | CUPP | 18,666 | 0.059 | 317,377 |
| PII2PW | 13,218 | 0.004 | 3,197,065 | |
| PassLLM | 1,973 | 34.056 | 58 | |
| bopscrk | 25,157 | 1.787 | 14,079 | |
| en_full | CUPP | 22,408 | 0.085 | 262,185 |
| PII2PW | 6,887 | 0.002 | 3,194,313 | |
| PassLLM | 2,103 | 34.244 | 61 | |
| bopscrk | 14,206 | 0.980 | 14,491 | |
| en_minimal | CUPP | 9,594 | 0.026 | 364,389 |
| PII2PW | 3,581 | 0.001 | 3,227,983 | |
| PassLLM | 2,189 | 32.282 | 68 | |
| bopscrk | 672 | 0.873 | 770 |
3.PII Embedding Rate
Fraction of generated candidates that contain a fragment of the target’s personal information. Higher rates indicate more targeted generation. The Personal-PCFG study (Li, Wang & Sun, INFOCOM 2016) observed that 60.1% of the leaked 12306 passwords contain at least one type of PII.
| Profile | Tool | Name | Date | Phone | Account | Overall |
|---|---|---|---|---|---|---|
| zh_full | CUPP | 27.1% | 4.6% | 0.0% | 7.3% | 33.2% |
| PII2PW | 25.8% | 23.4% | 6.5% | 7.5% | 51.0% | |
| PassLLM | 13.5% | 28.9% | 1.2% | 0.0% | 39.1% | |
| bopscrk | 10.3% | 3.9% | 0.0% | 5.6% | 19.2% | |
| zh_minimal | CUPP | 38.3% | 4.9% | 0.0% | 0.0% | 41.7% |
| PII2PW | 47.4% | 36.5% | 8.7% | 0.0% | 70.3% | |
| PassLLM | 23.8% | 36.4% | 1.1% | 0.0% | 50.1% | |
| bopscrk | 38.9% | 25.3% | 0.0% | 0.0% | 61.3% | |
| zh_medium | CUPP | 30.4% | 5.2% | 0.0% | 0.2% | 34.3% |
| PII2PW | 40.2% | 27.6% | 9.4% | 8.9% | 61.0% | |
| PassLLM | 12.9% | 28.5% | 0.8% | 0.0% | 33.9% | |
| bopscrk | 35.1% | 3.7% | 0.0% | 5.6% | 38.1% |
4.Academic Comparison: Success Rate @ N
The primary metric in the targeted password guessing literature. Given a PII–password paired dataset, what fraction of target passwords appears within the first N guesses? PII2PW, CUPP and bopscrk are evaluated on 200 synthetic records modelled after real Chinese password patterns (SR@N shown where a candidate ordering was captured); the remaining baselines are reported numbers from their respective papers on real leaked corpora — see fair-comparison caveat in §6.
| Method | Venue | Approach | SR@10 | SR@100 | SR@1000 | SR@10⁴ |
|---|---|---|---|---|---|---|
| CUPP | measured | Rule-based | — | — | — | — |
| PII2PW | measured | Rule-based (PII) | 11.0% | 46.5% | 76.5% | 97.5% |
| PassLLM | measured | LLM (7B) + LoRA | — | — | — | — |
| bopscrk | measured | Rule-based | 3.5% | 6.5% | 11.5% | 11.5% |
| TarGuess-III | CCS 2016 | PII-tagged PCFG | 4.6% | 19.7% | 45.4% | — |
| Personal-PCFG | INFOCOM 2016 | PCFG + PII tags | — | 12.8% | 29.5% | — |
| RFGuess-PII | USENIX 2023 | Random forest | 7.3% | 24.1% | 48.7% | — |
| PointerGuess | USENIX 2024 | Seq2Seq + pointer | 8.2% | 25.2% | — | — |
| PassLLM-I | USENIX 2025 | LLM (7B) + LoRA | 9.8% | 31.6% | 52.3% | — |
| RankGuess-PII | S&P 2025 | RL + ranking | — | 27.8% | 50.1% | — |
5.Guess-Number and Distribution Statistics
For passwords that were ultimately found, at what rank in the generated list did they appear? Lower ranks indicate better priority ordering.
| Tool | Found | Missed | Coverage | Min | Median | Mean | Max |
|---|---|---|---|---|---|---|---|
| CUPP | 45 | 155 | 22.5% | — | — | — | — |
| PII2PW | 195 | 5 | 97.5% | 1 | 318 | 1,270 | 9,749 |
| bopscrk | 23 | 177 | 11.5% | 1 | 68 | 145 | 737 |
The two tools also produce nearly disjoint candidate sets, suggesting they could be productively combined. Length distributions differ markedly: CUPP concentrates 82% of its output in the 9–12 character range, while PII2PW spreads across 1–24 characters in line with observed Chinese password length distributions.
| Length | CUPP | CUPP % | PII2PW | PII2PW % | PassLLM | PassLLM % | bopscrk | bopscrk % |
|---|---|---|---|---|---|---|---|---|
| 1–6 | 486 | 2% | 3,053 | 18% | 0 | 0% | 64 | 0% |
| 7–8 | 4,526 | 16% | 2,752 | 16% | 90 | 4% | 592 | 3% |
| 9–12 | 23,635 | 83% | 6,123 | 36% | 531 | 25% | 5,747 | 29% |
| 13–16 | 0 | 0% | 3,507 | 21% | 1,512 | 71% | 13,272 | 67% |
| 17–24 | 0 | 0% | 1,517 | 9% | 0 | 0% | 0 | 0% |
| 25+ | 0 | 0% | 148 | 1% | 0 | 0% | 0 | 0% |
6.Discussion
Strengths.
PII2PW reaches SR@100 = 46.5% and SR@10⁴ = 97.5% on our set, up from 1.0% and 84.0% before the generation order was reworked. The gain at small N came entirely from ranking: the previous static priority list emitted roughly 2,000 single-component variants before it reached name+birthdate, the most common Chinese password shape, so correct guesses landed near rank 2,800. Its 51.0% PII embedding rate on zh_full — versus CUPP’s 33.2% — confirms more targeted candidate generation. PII2PW is roughly 6× faster than CUPP with zero training data, zero GPU, and no dependency beyond a pip install.
Limitations.
The median hit-rank is 318: PII2PW still places most correct passwords in the hundreds, not the first dozen, and SR@10 = 11.0% is where a rule engine shows its ceiling. Its ordering is a hand-authored stage list, not a learned likelihood — it cannot rank two candidates within a stage, which is precisely what a trained model does. Replacing the static priority with a learned scorer over the same candidate set is the natural next step, and needs far less data than training a generator: only (profile, candidates, which one was correct). Separately, the built-in common-passwords dataset is no longer an independent test set — PII2PW now ships a generic weak-password fallback that overlaps it by construction, which is why its hit rate there jumped from 8.2% to 71.3%. Judge hit rate on rockyou instead.
Fair-comparison caveat.
The academic baselines (TarGuess, PassLLM, etc.) were evaluated on real leaked PII–password datasets — typically 12306, Dodonew — with 10⁵-plus records. Our evaluation uses 200 synthetic records modelled after published Chinese password patterns. The comparison is therefore directionally informative but not strictly equivalent.
Positioning.
PII2PW occupies a distinct niche: to our knowledge it is the only actively maintained, rule-based, Chinese-localised password profiling tool that requires neither training data nor GPU. That makes it a pragmatic option for penetration testers who cannot deploy machine-learning infrastructure — but its numbers here and the published baselines are measured on different corpora and should not be read as a ranking.
7.References
| # | Reference | Venue |
|---|---|---|
| [1] | Wang et al., Targeted Online Password Guessing: An Underestimated Threat. | ACM CCS 2016 |
| [2] | Li, Wang & Sun, A Study of Personal Information in Human-chosen Passwords and Its Security Implications. | IEEE INFOCOM 2016 |
| [3] | Li, Han & Xu, A Large-Scale Empirical Analysis of Chinese Web Passwords. | USENIX Sec. 2014 |
| [4] | Wang & Zou, Password Guessing Using Random Forest. | USENIX Sec. 2023 |
| [5] | Xiu & Wang, PointerGuess: Targeted Password Guessing Using Pointer Mechanism. | USENIX Sec. 2024 |
| [6] | Zou & Wang, Password Guessing Using Large Language Models. | USENIX Sec. 2025 |
| [7] | Yang & Wang, RankGuess: Password Guessing Using Adversarial Ranking. | IEEE S&P 2025 |