Byteball開発者向け情報wiki - Byteballウォレットを使ったログイン&ログアウト
以下のこのページの翻訳です。
https://steemit.com/byteball/@byteball.market/webs...
英語が読める方が上記から直接ご確認ください。

概要

Byteball Marketの最新のアップグレードでは、アセットの追跡とIDの発行、修正、アセット名のWalletへの公開のために、ユーザー自身を認証することが可能になりました。
この認証は、ユーザー名、電子メール、またはパスワードを入力する通常のサインアップ手順を必要としないので、私たちが慣れ親しんだものと多少異なります。
ユーザーはByteballウォレットでQRコードをスキャンするだけで、次の瞬間にはユーザー認証され、ウェブサイトにログインして、デバイスをByteball Marketとペアリングすることができます。
このメカニズムはまったく同じですが、完全に見知らぬ人でも、資産を交換するためにデバイスをペアにしても、ユーザーに関する慎重な財務情報は表示されません。
ただし、デバイス名は共有されているので、他の人に知らせたくない情報は公開しないように注意してください。

全体のプロセスをもう少し詳しく見ていきましょう。 主な手順は次の3つです。
  • ユーザーに招待(ペアリング)コードを表示する
  • ユーザーが招待コードを受け入れるようにする
  • 正しいペアリングイベントをユーザーと一致させる

これらのステップが完了すると、ユーザーは認証され、デバイスアドレスを使用して注文、資産または発行者などを関連付けることができます。

招待コードの表示

最初のステップは、ユーザーにByteball招待状(ペアコード)を提供することです
  • 訪問ユーザごとにhttpセッションが作成されます
  • ペアリングシークレットと呼ばれるランダムトークンが生成され、httpセッションにマッピングされます(トークンはhttpセッションIDでもかまいません)
  • ペアリングシークレットキーは、ボットのローカルバイトボールデータベースの一時的なペアリングシークレットキーテーブル(pairing_secrets)に格納されます
  • ペアリングシークレットを使用して、ペアリングコードが作成されます
  • ペアリングコードは、QRコード画像としてレンダリングされユーザに表示されます。

ペアリングコードは以下のようになります:
AlwsdxZStf7sCHFrFZFzDYG3hRsK65tv9HM/YGPxGJFd@byteball.org/bb#K7ZZnkyIxVwLJAAAF

これには、Byteball Marketデバイスの公開鍵、Byteball Marketデバイスがログインしているバイトボールのハブアドレス、最後に、各訪問者ごとにペアリングコードを一意にするペアリングの秘密が含まれています。 モバイルOSがサードパーティのQRスキャナを使用する場合はByteballウォレットを開くことができるように、
バイトボール:プロトコルプレフィックスがQRコードエンコードされたペアリングコードに追加されていることに注意してください。

招待コードの受け入れ

ByteballウォレットやサードパーティのQRコードスキャナを使用してQRコードをスキャンするのを待つだけで済むので、実装の観点から見ると最も簡単なステップです。 QRコードを読むだけでなく、招待コードをコピーして、チャット - >新しいデバイスの追加メニューのウォレットの「他のデバイスからの招待を受け入れる」機能に貼り付けることもできます。 これは、ユーザーがデスクトップウォレットを使用していて、QRコードをスキャンできない場合に便利です。

ペアリングイベント

ユーザーがQRコードをスキャンすると、そのデバイスがByteball Marketボットとペアリングされ、ペアリングイベントが発生します(ペアリングと呼ばれます)。 byteballcoreライブラリのバージョン0.2.86以来、このイベントは、ユーザのデバイスアドレスに加えて新しいパラメータで拡張されました:ペアリングコードを使用したデバイスからエコーバックされるペアリングの秘密。
ペアになったイベントは、以前にペアリングシークレットをマッピングした対応するHTTPセッションを検索してユーザーのデバイスを関連付けるために簡単に使用できます。
eventBus.on("paired", function(from_address, pairing_secret) {
    // lookup http session using pairing_secret
    // store from_address in the http session
}
このアプローチは、ユーザーがすでにデバイスをペアにしているため、認証目的で複数回使用することもできます。

結論

Byteball MarketはByteballボット、ウェブサイト、ユーザーデバイスを統合し、ユーザーにとって非常に便利で安全です。
ユーザーがその都度ユーザー名またはパスワードを覚えていたり、電子メールアドレスを登録したりする必要はありません。 一度認証されると、ウェブサイトはバックエンドボットを使用して、例えば、確認メッセージまたは支払いまたはプロフィール要求を送信するために、ユーザデバイスと通信することができます。 もちろん、これは逆も同様です。
ユーザーは、Byteballウォレットを介してボットにテキストメッセージを送信し、ボットがチャットインターフェイスを介して提供する操作を実行できます。
その結果は、ユーザーアカウントのWebサイトにも反映されます 。