1. ホーム
  2. python

[解決済み] Windowsライセンスキーの全順列

2023-01-13 09:39:21

質問

ノート PC の Windows 8 アップグレードを申請したいのですが、そのためにはノート PC の底面にある Windows 7 のライセンス キーが必要です。

Microsoft が無限の知恵を絞って、剥がれるライセンス ラベルを作成したため、ライセンス キーをはっきりと読むことができず、自動プロセスを使用して Windows アップグレードのオファーに私のラップトップを登録できないことを意味します。

ノート PC を光に対して斜めにすることで、コードの大部分を確認することができましたが、いくつかの文字はあいまいです (ラベルに読み間違えやすい文字を使用した Microsoft に改めて感謝します)。

次の (難読化された) ライセンス キーがあります。

MPP6R-09RXG-2H[8B]MT-[B8]K[HN]M9-V[6G]C8R

ここで、角括弧内の文字は曖昧なので、どちらかというと 8 または B , B または 8 , H または N , 6 または G .

16通りの組み合わせを作る

itertools を使用してこのライセンスキーの可能な順列を生成することは適切でしょうか、それとももっと良い方法があるでしょうか。

投稿者に感謝しながら正しいキーを手に入れました。キーが有効かどうか確認するのにとても便利な方法は Windows 7 プロダクト キー チェッカー .

どのように解決するのですか?

免責事項です。 はい、私はこれが Python のコードではないことは分かっています。ただ、頭に浮かんだので、単純に がありました。 で書き留めたのです。

最も簡単な方法は、シェル展開を使用することです。

$ echo MPP6R-09RXG-2H{8,B}MT-{B,8}K{H,N}M9-V{6,G}C8R
MPP6R-09RXG-2H8MT-BKHM9-V6C8R
MPP6R-09RXG-2H8MT-BKHM9-VGC8R
MPP6R-09RXG-2H8MT-BKNM9-V6C8R
MPP6R-09RXG-2H8MT-BKNM9-VGC8R
MPP6R-09RXG-2H8MT-8KHM9-V6C8R
MPP6R-09RXG-2H8MT-8KHM9-VGC8R
MPP6R-09RXG-2H8MT-8KNM9-V6C8R
MPP6R-09RXG-2H8MT-8KNM9-VGC8R
MPP6R-09RXG-2HBMT-BKHM9-V6C8R
MPP6R-09RXG-2HBMT-BKHM9-VGC8R
MPP6R-09RXG-2HBMT-BKNM9-V6C8R
MPP6R-09RXG-2HBMT-BKNM9-VGC8R
MPP6R-09RXG-2HBMT-8KHM9-V6C8R
MPP6R-09RXG-2HBMT-8KHM9-VGC8R
MPP6R-09RXG-2HBMT-8KNM9-V6C8R
MPP6R-09RXG-2HBMT-8KNM9-VGC8R