トリップとは
Wikioediaによると
トリップとは、個人の識別のために使われる文字列を表示する機能、またはその機能によって表示された文字列を指す。
プレイヤー名をタップすると表示されるこれですね。
人狼Onlineではアカウントを作成することなく自由にゲームに参加することができます。また、すでに他の人に利用されている名前も使うことができます。そのため、他のプレイヤーの名前を使って荒らしなどを行う人が出た場合、本人と見分けることが困難になってしまいます。
そのような、なりすましを防ぐために使われるものがトリップです。
トリップの仕組み
このように、プレイヤー名の後に#をつけて任意の半角英数字10文字を入力すると下のように固定トリップを付けることができます。
固定トリップには◆がつきます。また、固定トリップ(固定酉)に対して◆のついていないトリップは素トリップ(素酉)と呼ばれます。
このときに入力した #**********(任意の半角英数字10文字)をトリップキーと呼びます。(#は半角です。全角#と間違えやすいので注意。)
トリップは入力されるトリップキーによって決まります。#Tarabaganiと入力すれば、必ず◆yClz510H9lとなります。トリップキーとトリップの関係は不規則です。トリップキーを1文字でも変えると、全く別のトリップができます。(ただしトリップキーとして使われるのは8文字目までなので、9文字目と10文字目は何でもいいです。トリップに影響はしません)
トリップは、トリップキーをトリップに変換することはできても、トリップをトリップキーに変換することはできないようにできています。
○ #Tarabagani → ◆yClz510H9l
✕ ◆yClz510H9l → #Tarabagani
つまり、トリップキーは本人しか知らないため、トリップがその人は本人であるという証明になります。
10桁トリップと12桁トリップ
トリップキーをつけるのに半角英数字10文字を入力すると述べましたが、それに加えて .(ピリオド)と /(スラッシュ)も使えます。
正確にはUTF-8の10byteの文字列が使えます。(UTF-8は文字コードの1種です。ここでの説明は省略します。)
10byte以外の文字列をトリップキーにした場合、10桁トリップは付きません。
人狼Onlineには10桁トリップの他に、12桁トリップがあります。
12桁トリップはUTF-8の12byte以上の文字列をトリップキーにした場合に付けることができます。
ざっくり言うと、#の後に半角英数字10文字を入れると10桁トリップ、半角英数字12文字を入れると12桁トリップを付けることができます。
トリップ検索とは
トリップの文字列はトリップキーによって不規則に決まると述べましたが、ある程度なら任意の文字列を入れることができます。
一体どうやるのか。
トリップからトリップキーをつくれないのなら方法は1つ。それは総当りです。
つまりトリップキーを適当に入れまくって自分の望むトリップができるまで続けるんですね。
最初の1桁や2桁はそれでできるかもしれませんが、あまり現実的ではないので実際にはプログラムにやらせます。
ブラウザでトリップを検索するにはMilky氏が開発したUTFが私の知る限り最も速いトリップ検索ツールです。他にもトリップ作成機などがあります。
また、Meriken氏が開発したMeriken's Tripcode Engineという高速なトリップ検索ソフトがあります。パソコンを持っている人はこちらを使うのがいいかと思います。
トリップ検索にかかる時間
一致させる文字数を増やすごとに指数関数的に増加します。3文字トリップは比較的かんたんに作れますが、5文字トリップになるとブラウザ検索では厳しくなります。パソコンでトリップ検索ソフトを使っても、8文字以上一致させるには時間がかかります。
この「検索に時間がかかる」ことが固定トリップの安全性を高めています。
トリップ検索ツールで他人と全く同じトリップを作ろうとした場合、完成させるには膨大な時間がかかるため現実的ではありません。(ただし、パソコンの性能向上に伴い、超高性能なパソコンがあれば10桁トリップなら割ることが不可能ではないらしいです。)
トリップ検索にかかる時間の目安
ブラウザ版
ブラウザで検索する場合はパソコンとモバイル端末ではそんなに差がないかなという印象です。もちろんスペックに依存するのですが、
iPhone SE(初代) 3000Trips/sec
iPhone12 11000Trips/sec
パソコン(Ryzen7 5800H) 12000Trips/sec
ぐらいのスピードで計算できます。パソコンはタブ数を増せばさらに計算速度は上がります。以下に12000Trip/secで計算した場合の所要時間を示します。
3文字トリップ 22秒
4文字トリップ 23分
5文字トリップ 1491分
この所要時間は推定ですので、運が良ければ1秒で出る可能性も0ではありません。
サイコロでイメージすると分かりやすいです。例えば6という目を出そうとすると、1回目の試行で出る確率は6分の1ですが、3回目では2分の1になります。
トリップに当てはめて考えると、5文字トリップを作ろうとした場合はすべてのパターンが 64の5乗=1073741824となります。
つまり1073741824面のサイコロ(ほぼ球体ですが…)の中から特定の1パターンを出すものと考えてください。計算速度は1秒間にサイコロを振る回数です。
上の例に当てはめると、1秒間に12000回サイコロを振るということなので、
1073741824÷12000=89479秒(1491分)
すべてのパターンを出す目安は1491分となります。目安なので、1491分よりも早く終わる時もあれば、さらに時間がかかる時もあります。
ブラウザでの話をしましたが、パソコンではどうなのかというとトリップ検索ソフトを使った場合の検索速度は
10桁で 130000000Trips/sec
12桁で 300000000Trips/sec
ほどの速度が出ます。私の環境での速度なので、さらに高性能なCPUを使った場合はもっと速度が出ると思います。Meriken's Tripcode EngineはGPUを使って計算することもできるようなので、ゲーミングパソコンを持ってる方は試してみると良いかもしれません。(私は普通のノートパソコンを使っているので検証できませんでした。)
やはり検索ソフトは高速ですね。ブラウザの1万倍くらいの速度が出ています。5文字トリップがおよそ8秒でできてしまう速度です。
(ブラウザ版では10桁トリップについてしか書いていませんが、これは12桁トリップを検索できるサイトを私が知らないためです。もしかしたら12桁トリップ検索サイトがあるかもしれないです。)
個人的な考え
5文字トリップ以上を検索するならパソコンを使うのが無難だと思います。スマホでブラウザの検索ツールを使う場合、検索するには画面を表示し続ける必要があります。つまり、何か他のアプリを使ったり、スリープモードにした状態で検索することはできないので不便だと感じました。とはいえ4文字以下なら普通に検索できるので、有効な検索手段だとは思います。
参考文献
おまけ
ご自由にどうぞ
◆Logical.EYZR #AエF、c給ュ「。ユヒ