私たちは、最も安全なモバイル暗号通貨ウォレットは、モバイル オペレーティング システムに固有の制約を克服するものであると信じています。たとえば、iOS では、Apple の CryptoKit は secp256k1 楕円曲線、ビットコイン、イーサリアム、その他多くのブロックチェーンの標準。
この制限により、開発者はキーの保管やトランザクションの署名のためにデバイスのセキュアな要素を利用することが制限されます。その結果、モバイル暗号ウォレットはインターネットに接続され、暗号アルゴリズムのソフトウェア実装を使用して安全な要素の外部でトランザクションに署名するため、ホットウォレットとして分類されます。
これは、秘密キーが、少なくとも署名中に、サンドボックス アプリ環境のメモリ内で公開される必要があることを意味します。そのため、安全な要素を使用してトランザクションに署名するウォレットよりも潜在的な脅威にさらされる可能性が高くなります。
セキュアエレメント上で署名を直接実行することはできないため、保護が強化されますが、私たちは、 オープンソースの セキュリティ、透明性、ユーザーコントロールを優先するモバイル暗号ウォレット。
当社のセキュリティ アーキテクチャは、次の目的に特化して構築されています。
- 複数のブロックチェーンをサポート
- セキュリティを強化する予測不可能性の尺度である高エントロピーの秘密キーを生成します。
- 携帯電話のセキュリティ ハードウェアと OS のセキュリティ機能を活用して、実証済みの暗号化を活用してユーザーの秘密キーを安全に暗号化します
- (復号化キーの OS キーチェーン保護に加えて) 追加レベルの暗号化を必要とする上級ユーザー向けに、ユーザー生成のパスワードを使用してセキュリティを強化します。
- ハードウェア ウォレットや MPC クォーラム ベースのシステムなど、新しいキー管理タイプを将来組み込むための強固な基盤を作成します。
オープンソースの利点
基本的なセキュリティ原則の 1 つとして、 クラーケンウォレット 無料のオープンソース ソフトウェアです、以下で配布されています MITライセンス。新しいウォレットをゼロから構築することは、オープンソースと分散型エコシステムの育成を支援することが私たちにとって重要でした。
オープンソース コードがなければ、Kraken Wallet は透明性のない大量の信頼を必要とします。これにより、クライアントの保護が低下します。クライアントを自分で検証、変更、実行したくてもできません。 「信じるな、検証しろ!」これは単なる業界の格言ではなく、当社の指針の 1 つです。
当社のソフトウェアをオープンソース化することで、この製品に対して当初設定した 2 つの基本的な目標、つまり検証可能で監査可能な信頼の最小化が達成されます。
- 検証可能性: このブログ投稿で示されているセキュリティの前提条件が正しいことを検証する機能。誰でもできる ソースコードを見てください このウォレットで何が行われていて、何が行われていないのかを具体的に理解するためです。
- 監査可能性: セキュリティ実装の出力が正しいことを検証し、正しくない場合はレポートする機能。私たちはリリース前に社内および社外のチームと協力してセキュリティ監査を複数回実施しました。今後は、誰でもコードを監査し、その結果に関するレポートを作成できるようになります。
鍵の生成と鍵のインポート
React Native は強力なツールですが、暗号化モジュールが組み込まれていません。これを回避するために、NodeJS の暗号モジュールの pure-js 実装 (crypto-browserify) を使用しました。 crypto.randomBytes() メソッド – キーの生成中に必要な実際のランダム バイトを生成する – は、 反応ネイティブのランダム値の取得 ポリフィル。
React-native-get-random-values は、ネイティブ コードを使用して、デバイスで利用可能な暗号的に安全な擬似乱数ジェネレーター (CSPRNG) を利用して乱数を生成します。事実上すべての最新のデバイスでは、この乱数ジェネレータは安全なハードウェア乱数ジェネレータによってサポートされています。
ウォレットの初期化中に、CSPRNG からエントロピーを取得し、確立された npm パッケージを使用してそれをニーモニック シードに変換します (BIP32, BIP39).
キーは BIP39 標準に基づいて変換、保存され、ユーザーに提示されます。BIP39 標準は、エコシステム内のほとんどのウォレットに相互運用性を備えた、バックアップが簡単なニーモニック方法を提供します。インポート機能は、エコシステム内で最高の相互運用性を提供する BIPXNUMX 互換シードのリカバリをサポートします。
キー管理
Kraken ウォレットは、シードとニーモニックという 2 つの秘密の値と、ウォレット アドレス、ウォレット名、トランザクションの説明などの複数の非秘密 (ただし非公開) 値を保持します。
秘密鍵マテリアル (シード/ニーモニック) は、キーチェーン (iOS の場合) とキーストア (Android の場合) に保存されます。公開キー素材と非機密データ (拡張公開キー、アドレス、説明) は、アプリケーションの暗号化されたデータベースに保存されます ( レルム).
データを保護するためのセキュリティ制御は複数あります。
- アプリロック: キーチェーンまたはキーストアに保存される、ランダムに生成された 64 バイトの文字列。シークレットへのアクセスは、ユーザーの存在要件 (生体認証またはパスコード認証) によって保護されます。
- パスワード : ユーザーが提供し、デバイス上に保持されません。代わりに、ユーザーはアプリケーションから要求されるたびにパスワードを手動で入力する必要があります。ウォレットは、キーチェーンまたはキーストアに保存されている 2 つのフラグ (is_storage_encrypted と is_seed_encrypted) を参照して、パスワードが必要かどうかを判断します。 ArgonXNUMX アルゴリズムが鍵導出関数として使用されます。
- データベースの暗号化: データベース (レルム) は、非機密データを保存するために使用されます。データはランダムな 64 バイトのキーで暗号化されます。
- ロックアウト機構: 間違ったパスワードを入力すると、その後のパスワードの試行が可能になるまでに遅延が発生します。このメカニズムは、ブルートフォースパスワード攻撃を効果的に阻止します。試行回数や遅延時間などのロックアウト パラメータに関する情報は、キーチェーンまたはキーストアに安全に保存されます。
シード、ニーモニック、データベース暗号化キーは常に暗号化された形式で保存されます。
- 保護が有効になっていない場合: シード、ニーモニック、レルム暗号化キーは、ユーザーの存在によるアクセス制御なしでキーチェーンまたはキーストアに直接保存されます。
- アプリロックがかかっている場合: ニーモニックとシードは、まずアプリ ロック シークレットで暗号化され、次にキーチェーンまたはキーストアに安全に保存されます。 Realm 暗号化キーは、キーチェーンまたはキーストアにも直接保存されます。
- パスワード保護が有効な場合: ニーモニックとシードはパスワードで暗号化されますが、レルム暗号化キーは is_storage_encrypted が true に設定されている場合にのみパスワードで暗号化されます。
- アプリロックとパスワード保護の両方が有効な場合: ニーモニックとシードは、パスワード (最初) とアプリ ロック (2 番目) の両方で暗号化されます。レルム暗号化キーは、is_storage_encrypted が true に設定されている場合にのみ、パスワードを使用して暗号化されます。
主な使用法
シード/ニーモニックはキーチェーンまたはキーストアに保存され、暗号化操作において重要な役割を果たします。新しいウォレットアドレスを生成する必要がある場合、またはトランザクションに署名する必要がある場合、秘密キーなどの必要な情報をこのシードから導出します。
ただし、これらの操作中に秘密キーをメモリにロードする必要があることに注意することが重要です。この必要性は、モバイル ウォレットについて前述した制約と、トランザクション署名のためのセキュア エレメントに直接アクセスできないことに起因しています。
- トランザクション署名 (トークンの送信)
- WalletConnect データ署名 (セッションリクエストの処理)
- 新しいウォレットの追加
- テストネットチェーンの有効化 (テストネットウォレットの追加)
- ニーモニックの表示
- ニーモニックの確認
- アプリロックの有効化と無効化
- パスワードの有効化と無効化
次の機能に対して追加の生体認証が実行されます。
- アプリロックを有効にする
- すべてのデータを消去する
- ウォレット(アカウント)を削除する
- パスワードの有効化または無効化 (アプリロックの取得に加えて)
- アプリケーションを開く
- アプリケーションをフォアグラウンドに移動する
- 拡張公開キーの表示
- 分散型アプリケーション (dApp) への接続
さらに、アプリケーションを開くときにパスワードが必要になる場合があります。キーチェーンとキーストアは常に、 反応ネイティブキーチェーン ラッパー:
- ラッパーは、アイテムごとにキーチェーンまたはキーストアに新しいキーを生成します。
- ラッパーは、キーチェーンとキーストアの正しい構成フラグを渡す責任があります。
- ウォレットは、キーにアクセスするにはデバイスのロックを解除する必要があるように、常にラッパーにフラグを設定するように要求します。
- ユーザープレゼンス (生体認証) チェックは時間ベースで構成されており、チェックは 5 秒間有効です。ユーザーの存在チェックはアクセスごとに実行されません
暗号化アルゴリズムはすべてのアイテムで同じです。
- キーは、Argon2id を使用して、NFC で正規化されたシークレットから派生されます。
- Argon2id のソルトはデバイスの一意の ID です
- 暗号化モードはAES-GCMです
- AES の初期化ベクトル (IV) は 16 ランダム バイトです
- AES の認証タグの長さは 16 バイトである必要があります
トランザクションの署名
キーの保管、生体認証、およびパスワード保護に関する前述の対策に加えて、トランザクション署名は引き続き改善の重要な焦点領域です。最初のステップとして、この分野で次のようないくつかの注目すべき措置を実装しました。
トランザクションシミュレーション
外部 API サービス (例: フグ など)トランザクションがユーザーにもたらす可能性のある「重大度」のレベル(リスクスコア)を確認します。これは、悪意のあるトランザクション (またはメッセージ署名) の可能性を示すフルブロック画面から、トランザクションに署名または確認する前にユーザーが持つ必要があるさまざまなレベルの警戒の警告まで続きます。
その他の対策は次のとおりです。
- 間違ったアドレスに送信しないようにするためのアドレス検証
- ユーザーがアドレス構成に関する特定の攻撃の対象にならないようにするために、アドレス全体が常に表示されます。
- ユーザーが間違ったネットワークに送信しないことを確認するためのネットワーク検証と警告
- ユーザーがトランザクションに対して過剰な支払いをしていないかどうかを確認するための料金健全性チェック
ネットワーキングのプライバシー
ユーザーのプライバシーと個人データをネットワーク リクエスト、特にサードパーティ サービスに漏洩しない方法で保護するために、当社はプロキシ リクエストへの API ゲートウェイを開発しました。このプロキシを使用すると、ユーザーのリクエストをサードパーティのサービスに渡さず、クライアントの IP が外部プロバイダーや公共プロバイダーに公開されなくなります。
このバックエンド サービスは基本的に、パブリック ブロックチェーン データをクエリするための API です。ウォレットのセキュリティ アーキテクチャ内で、その目的は、この機能をすべてのブロックチェーンにわたる共通 API の背後にカプセル化して、Kraken ウォレットがデータ クエリのためにブロックチェーン固有の動作を実装する必要がないようにすることです。
このバックエンド サービスは、この共通 API を定義します。最終的にはリクエストを他のパーティにプロキシし、そこから実際のデータを取得します。ブロックチェーン自体にインデックスを付けたり、状態を維持したりしません。
セキュリティの前提条件
当社のセキュリティ アーキテクチャは、最適な保護を実現するために、いくつかの重要な前提に基づいて動作します。私たちは次のように推測します:
- ユーザーのデバイスは root 化されておらず、OS も古くなく、攻撃者にデバイスのメモリへのアクセスを許可する可能性のある重大な脆弱性の影響を受けやすいわけではありません。
- キーチェーンまたはキーストア パッケージは十分に強力な保護を提供します
- モバイル OS はアプリのプロセス間に強固なサンドボックスを提供し、シードなどの機密データを含むメモリが適切に管理されるようにします。
追加機能
- アプリは、ウォレットを実行するために必要な最小限のデータのみを保存するという原則に基づいて動作します。
- クライアントではサードパーティの分析やクラッシュレポートのソフトウェア開発キット (SDK) は使用されません。
- 第三者にデータを漏洩しないように努めているため、追加のデータ追跡機能を含めることは意味がありません。つまり、クライアントには分析ソフトウェアやクラッシュ レポート ソフトウェアが見つからないことになります。
- (通常の AppStore/Play ストア更新フローの外で) 無線更新は許可されず、コードベースにも実装されません。
- ユーザーは、オプトインの同意がなければ更新できない、コンパイルされたソフトウェアを期待できます。
- トークンリストと評判システム
- ユーザーが自分のトークンを管理できるようにするために、Kraken やその他のサードパーティが提供する資産に基づいたリストと評価システムを実装しました。
- NFTスパム
- 今後も改善を続ける予定の最初の取り組みは、スパムとスパム関連の攻撃の検出です。スパムはユーザーのフォルダに自動的にアーカイブされます。
外部セキュリティ監査
当社のセルフカストディウォレットのセキュリティは、業界で定評のあるセキュリティ監査会社である Trail of Bits によって実施された監査を通じて厳格に評価されました。この監査には、潜在的なセキュリティ脆弱性を特定して対処することを目的として、コードベースとクライアント アーキテクチャの詳細な検査が含まれていました。
透明性を確保し、プラットフォームのセキュリティに関する洞察を提供するために、この監査の結果は一般に公開されます。このオープン アクセスにより、ユーザーおよび関係者は、Trail of Bits が実施したセキュリティ分析の結果を確認できます。このレポートは、当社が実施しているセキュリティ対策と、ユーザーのために安全な環境を維持するための当社の取り組みを理解する上で重要なリソースとして役立ちます。
セキュリティ、透明性、ユーザーコントロールを優先する
Kraken Wallet は、プラットフォーム固有の制約に直面しながらも、利便性と堅牢な保護の間で微妙なバランスを保っています。私たちのアプローチは常に、広く認知されている相互運用可能なウォレット構造から始めることでした。この強固な基盤は、暗号資産を自己保管するための進化し続ける最高レベルのセキュリティ ソリューションをユーザーに提供することを目的として、当社が革新し、新しい機能を追加するための基盤を整えます。
これらの資料は一般的な情報提供のみを目的としており、投資アドバイスや、暗号資産の購入、売却、ステーキング、保有、または特定の取引戦略への参加の推奨や勧誘ではありません。 Kraken は、利用可能にする特定の暗号資産の価格を増減させることはしませんし、今後も行いません。 一部の暗号商品および市場は規制されていないため、政府の補償や規制による保護制度によって保護されない場合があります。 暗号資産市場の予測不可能な性質により、資金の損失につながる可能性があります。 税金は、暗号資産の返品および/または値の増加に対して支払われる可能性があるため、課税上の立場について独立したアドバイスを求める必要があります。 地理的な制限が適用される場合があります。
- SEO を活用したコンテンツと PR 配信。 今日増幅されます。
- PlatoData.Network 垂直生成 Ai。 自分自身に力を与えましょう。 こちらからアクセスしてください。
- プラトアイストリーム。 Web3 インテリジェンス。 知識増幅。 こちらからアクセスしてください。
- プラトンESG。 カーボン、 クリーンテック、 エネルギー、 環境、 太陽、 廃棄物管理。 こちらからアクセスしてください。
- プラトンヘルス。 バイオテクノロジーと臨床試験のインテリジェンス。 こちらからアクセスしてください。
- 情報源: https://blog.kraken.com/product/kraken-wallet/kraken-wallet-security
- :持っている
- :は
- :not
- :どこ
- $UP
- 1
- 13
- 16
- a
- 能力
- 私たちについて
- アクセス
- 越えて
- 実際の
- 加えます
- 追加
- 添加
- NEW
- 住所
- アドレス
- アドレッシング
- 高度な
- アドバイス
- AES
- 目的としました
- アルゴリズム
- アルゴリズム
- すべて
- 許可されて
- ことができます
- また
- 常に
- 量
- an
- 分析
- 分析論
- および
- アンドロイド
- どれか
- 誰も
- API
- アプリ
- 申し込み
- 申し込む
- アプローチ
- 建築
- です
- AREA
- 周りに
- AS
- 資産
- 前提条件
- At
- 攻撃
- アタッカー
- 攻撃
- 試み
- 監査
- 監査可能
- 監査
- 監査
- 認証
- 認証
- 自動的に
- 利用できます
- バック
- 支持された
- バックエンド
- ベース
- 基本的に
- BE
- き
- 始まる
- 行動
- 背後に
- さ
- 信じる
- BEST
- の間に
- バイオメトリック
- 生体認証
- バイオメトリクス
- Bitcoin
- ビット
- ブロック
- ブロックチェーン
- ブロックチェーンデータ
- ブロックチェーン
- ブログ
- 支持者
- 両言語で
- 持って来る
- 建物
- 内蔵
- 焙煎が極度に未発達や過発達のコーヒーにて、クロロゲン酸の味わいへの影響は強くなり、金属を思わせる味わいと乾いたマウスフィールを感じさせます。
- 購入
- by
- 缶
- 機能
- 大文字
- 注意
- チェーン
- 課題
- チェック
- 小切手
- 分類された
- クライアント
- クライアント
- コード
- コードベース
- コミットメント
- コミットした
- コマンドと
- 互換性のあります
- 補償
- コンパイル
- 実施
- 設定された
- 交流
- 制約
- コンサルティング
- 連続的な
- コントロール
- controls
- 利便性
- 変換
- 変換
- 正しい
- 可能性
- Crash
- 重大な
- 重大な
- クリプト
- 暗号セキュリティ
- クリプトウォレット
- 暗号財布
- 暗号資産
- クリプトセット
- 暗号資産
- 暗号
- 暗号的に
- 暗号
- ダップ
- データ
- データベース
- 分権化された
- 減少
- 定義する
- 遅延
- 派生する
- 派生
- 慾望
- 詳細な
- 検出
- 決定する
- 発展した
- 開発者
- 開発
- デバイス
- Devices
- 異なります
- 直接
- 直接アクセス
- 直接に
- 配布
- ありません
- そうではありません
- ドメイン
- 行われ
- ドント
- ドロー
- デュレーション
- 間に
- 前
- エコシステム
- 効果的に
- 努力
- 努力
- 素子
- 要素は
- 楕円
- 包含された
- 暗号化する
- では使用できません
- 暗号化
- 従事する
- 従事して
- 強化された
- 十分な
- 確保
- 確保する
- 入る
- 全体
- 環境
- 特に
- イーサリアム
- 評価
- あらゆる
- 検査
- 期待する
- 露出した
- で
- 外部
- 余分な
- 顔
- 特徴
- 少数の
- もう完成させ、ワークスペースに掲示しましたか?
- 調査結果
- 会社
- 名
- フラグ
- フロー
- フォーカス
- フォロー中
- フォワード
- 育てる
- Foundation
- 無料版
- から
- フル
- function
- 機能性
- 機能性
- 基本的な
- 資金
- 未来
- ゲートウェイ
- 生成する
- 生成された
- 生成
- 世代
- ジェネレータ
- 地理的
- 与える
- 目標
- 目標
- ゴエス
- 行く
- 政府・公共機関
- 助成金
- 陸上
- 案内
- ハンドリング
- Hardware
- ハードウェア財布
- 持ってる
- 助けます
- ハイ
- 保持している
- HOT
- 認定条件
- HTTP
- HTTPS
- 識別
- if
- 実装する
- 実装
- 実装
- import
- 重要
- 改善
- 改善
- in
- できないこと
- include
- 含めて
- 誤った
- 増える
- 増加した
- 独立しました
- index
- 産業を変えます
- 情報
- 固有の
- 初期
- 当初
- 革新します
- 洞察力
- を取得する必要がある者
- 興味がある
- 内部
- インターネット
- 相互運用性(インターオペラビリティ)
- 相互運用可能な
- に
- 投資
- iOS
- IP
- IT
- リーディングシート
- ITS
- 自体
- ただ
- キープ
- 保管
- キー
- キー
- クラーケン
- 欠如
- 大
- つながる
- 漏れ
- 最低
- less
- レベル
- レベル
- ような
- 制限
- リスト
- ロック
- ロックアウト
- 損失
- 製
- 維持する
- 保守
- make
- 作る
- 悪意のある
- 管理します
- マネージド
- 管理
- 手動で
- 多くの
- マーケット
- 材料
- 材料
- 最大幅
- マキシム
- 五月..
- 手段
- だけど
- 措置
- メカニズム
- メモリ
- 言及した
- メッセージ
- 方法
- 最小化
- 最小
- マサチューセッツ工科大学(MIT)
- モバイル
- モード
- モダン
- 修正する
- モジュール
- MongoDBの
- 他には?
- 最も
- MPC
- の試合に
- しなければなりません
- 名
- ネイティブ
- 自然
- ナビゲート
- 必要
- 必要
- 必要とされる
- ニーズ
- ネットワーク
- 新作
- いいえ
- 注意
- 注目に値する
- 数
- 番号
- of
- 提供
- 提供すること
- オファー
- on
- ONE
- の
- 開いた
- オープンソース
- オープンソースコード
- 開設
- 動作
- オペレーティング
- オペレーティングシステム
- 業務執行統括
- 最適な
- or
- 注文
- OS
- その他
- その他
- 私たちの
- 時代遅れの
- 出力
- 外側
- パッケージ
- パッケージ
- パラメータ
- 特定の
- パーティー
- パス
- 通過
- パスワード
- 以下のために
- 実行する
- 実行
- 個人的な
- 個人データ
- ピース
- 場所
- 計画
- プラットフォーム
- プラトン
- プラトンデータインテリジェンス
- プラトデータ
- 演劇
- 位置
- 可能
- ポスト
- 潜在的な
- 強力な
- 事実上
- PLM platform.
- 前に
- ブランド
- 原則
- 原則
- 事前の
- 優先する
- プライバシー
- プライベート
- 秘密鍵
- 秘密鍵
- ラボレーション
- 作り出す
- プロダクト
- 製品
- 守る
- 保護された
- 保護
- 保護
- 提供します
- 提供
- プロバイダ
- は、大阪で
- 提供
- 代理
- 公共
- 公開ブロックチェーン
- 公開鍵
- 公開鍵
- 公然と
- 目的
- 目的
- ランダム
- ランダムに生成
- realm
- 認識
- おすすめ
- 回復
- に対する
- レギュラー
- レギュレータ
- リリース
- 残っている
- レポート
- 各種レポート作成
- 評判
- リクエスト
- 必要とする
- の提出が必要です
- 要件
- リソースを追加する。
- 責任
- 制限
- 結果
- 結果
- 検索
- return
- 明らかにする
- レビュー
- リスク
- 堅牢な
- 職種
- 根付いた
- ラン
- 塩
- 同じ
- スキーム
- スコア
- 画面
- SDK
- 二番
- 秒
- 秘密
- 安全に
- しっかりと
- セキュリティ
- セキュリティ監査
- セキュリティー対策
- シード
- シーズ
- Seek
- 自己
- 自己管理
- セルフカストディウォレット
- 売る
- 送信
- 送信
- センス
- 敏感な
- 仕える
- サービス
- サービス
- セッション
- セッションに
- セット
- いくつかの
- すべき
- 符号
- 署名されました
- 署名
- から
- So
- ソフトウェア
- ソフトウェア開発
- 勧誘
- 固体
- 溶液
- 一部
- ソース
- 部品調達
- スパム
- 特定の
- 特に
- ステージ
- 利害関係
- 標準
- 都道府県
- 茎
- 手順
- まだ
- ストレージ利用料
- 店舗
- 保存され
- 保存
- 戦略
- ストライキ
- 文字列
- 強い
- 構造
- それに続きます
- そのような
- サポート
- サポート
- 確か
- 周囲の
- がち
- TAG
- 対象となります
- 税金
- 課税
- チーム
- テストネット
- より
- それ
- ソース
- アプリ環境に合わせて
- それら
- その後
- ボーマン
- 彼ら
- 三番
- 第三者
- サードパーティ
- この
- 脅威
- 介して
- <font style="vertical-align: inherit;">回数</font>
- 〜へ
- トークン
- ツール
- top
- 追跡
- トレーディング
- 取引戦略
- トレイル
- トランザクション
- 取引
- 透明性
- true
- 信頼
- 2
- 最終的に
- 下
- わかる
- 理解する
- ユニーク
- ロック解除
- 予測できない
- 規制されていません
- 更新しました
- 更新版
- 更新
- に
- us
- つかいます
- 中古
- ユーザー
- users
- 使用されます
- 活用する
- 活用
- 有効な
- 値
- 価値観
- 検証できる
- 確認する
- 目に見える
- 脆弱性
- 財布
- 財布
- wanted
- ました
- 仕方..
- we
- この試験は
- 何ですか
- いつ
- たびに
- 一方
- かどうか
- which
- while
- 誰
- 広く
- Wikipedia
- 意志
- 以内
- 無し
- 仕事
- でしょう
- 与えるだろう
- 間違った
- XYZ
- You
- あなたの
- あなた自身
- ゼファーネット