Javaリングの紹介

今月のコラムは2部に分かれています。この記事で具体化されている最初の部分では、Javaリングの歴史とそれを構築するために使用されたテクノロジー、およびセキュリティアプリケーションやその他のアプリケーションに対するiButtonの適合性について簡単に説明します。第2部では、Java iButtonでJavaCard 2.0 APIを使用する方法を示し、アプリケーションを設計してダウンロードし、JavaCardで実行されているアプリケーションと通信する方法を読者に非常に早い段階で説明します。

それは詳細にあります

Java Ringは、非常に安全なJavaを利用した電子トークンであり、継続的に実行され、変更できないリアルタイムクロックと頑丈なパッケージを備えており、多くのアプリケーションに適しています。 Java Ringの宝石は、Java iButtonです。これは、頑丈で安全なステンレス鋼のケースに収容された強力なJava仮想マシン(JVM)を備えた100万トランジスタのシングルチップの信頼できるマイクロコンピュータです。 Java Card 2.0標準と完全に互換性があるように設計されています(Java Card 2.0の詳細については、先月のJavaDeveloperを参照してください。列「JavaCard2.0について」)このプロセッサは、RSA暗号化用の高速1024ビットモジュラー指数、大容量のRAMおよびROMメモリ、および変更不可能なリアルタイムクロックを備えています。パッケージ化されたモジュールには、Dallas Semiconductor 1-Wireバスの仕様に準拠した、単一の電気接点とアースリターンのみがあります。リチウムで裏打ちされた不揮発性SRAMは、焼き戻しが検出されたときにすべてのメモリをほぼ瞬時にクリアすることにより、高い読み取り/書き込み速度と比類のない耐タンパー性を提供します。これは、高速ゼロ化と呼ばれる機能です。。データの整合性と時計機能は10年以上維持されています。直径16mmのステンレス鋼筐体は、最大128キロバイトの高速不揮発性スタティックRAMに必要なより大きなチップサイズに対応します。モジュールの小さくて非常に頑丈なパッケージにより、キーフォブ、財布、時計、ネックレス、ブレスレット、指輪など、個々のライフスタイルに合わせて選択したアクセサリに取り付けることができます。

歴史的背景

1989年の夏、Dallas Semiconductor Corp.は、Dallas Semiconductor1-Wire通信プロトコルを利用した最初のステンレス鋼でカプセル化されたメモリデバイスを製造しました。 1990年までに、このプロトコルは改良され、さまざまな自己完結型メモリデバイスで採用されていました。元々は「タッチメモリ」デバイスと呼ばれていましたが、後に「iButtons」に名前が変更されました。バッテリーのようにパッケージ化されたiButtonは、上面にアクティブな電気接点が1つだけあり、ステンレス鋼のシェルがアースとして機能します。

データは、シンプルで安価なRS232Cシリアルポートアダプタを介してメモリからシリアルに読み書きできます。RS232Cシリアルポートアダプタは、I / Oの実行に必要な電力も供給します。 iButtonメモリは、アダプタが提供する「BlueDot」レセプタに瞬間的に接触することで読み取りまたは書き込みが可能です。シリアルポートアダプタに接続されていない場合、メモリデータは、メモリの内容を少なくとも10年間維持する生涯リチウムエネルギー供給によって、不揮発性ランダムアクセスメモリ(NVRAM)に維持されます。電気的に消去可能なプログラム可能な読み取り専用メモリ(EEPROM)とは異なり、NVRAM iButtonメモリは、摩耗することなく、必要に応じて何度でも消去および再書き込みできます。また、相補型金属酸化膜半導体(CMOS)メモリに典型的な高速で消去または再書き込みすることもできます。時間のかかるEEPROMのプログラミングを必要とせずに。

iButtonメモリデバイスは、発売以来、多くの場合過酷な環境条件で、頑丈なポータブルデータキャリアとして大量に展開されてきました。大規模な用途の中には、トルコのイスタンブールのトランジット運賃運送業者があります。ライダートラックの側面のメンテナンス記録キャリアとして。また、米国郵政公社の屋外メールボックスのメールコンパートメント内のメールボックス識別子として。カナダでは、予防接種の記録を保持するために牛がイヤリングとして着用し、多くの地域の農業労働者がタイムカードの頑丈な代替品として使用しています。

iButton製品ラインとその多くのアプリケーションは、リソースセクションにリストされているダラスセミコンダクタのiButtonWebサイトで説明されています。すべてのiButton製品は、固有の8バイトのシリアル番号で製造されており、2つの部品が同じ番号を持たないことが保証されています。最も単純なiButtonの中には、ファイルとサブディレクトリを保持でき、小さなフロッピーディスクのように読み書きできるメモリデバイスがあります。これらに加えて、セキュリティアプリケーション用のパスワードで保護されたファイル領域を備えたiButton、金融取引を保護するために書き換えられた回数をカウントするiButton、温度センサーを備えたiButton、継続的に実行される日付/時刻クロックを備えたiButton、さらには強力なマイクロプロセッサを含むiButton。

郵便セキュリティデバイス

ダラスセミコンダクターは、10年以上にわたり、衛星TVデスクランブラー、現金自動預け払い機、POS端末、および暗号化セキュリティと高度なセキュリティを必要とするその他の同様のアプリケーションで使用される、安全性の高いマイクロプロセッサのラインを設計、製造、販売してきました。ハッカーによる攻撃への抵抗。米国郵政公社(USPS)の情報ベースの印プログラム郵便セキュリティデバイス仕様は、任意のPCで有効な米国の郵便料金の印刷を許可することを目的としており、安全なマイクロプロセッサがiButtonに設計されたときに、2つの専門分野を組み合わせる最初の機会を提供しました。

Crypto iButtonという名前の製品は、高いプロセッサパフォーマンス、高速暗号化プリミティブ、および物理的攻撃と暗号化攻撃に対する優れた保護を兼ね備えています。たとえば、大整数のべき乗剰余エンジンは、1024ビットのべき乗で1024ビットのべき乗剰余を1秒未満で実行できます。大整数のべき剰余を高速で実行する機能は、RSA暗号化、Diffie-Hellman鍵交換、デジタル署名標準(FIPS 186)、およびその他の多くの最新の暗号化操作の中心です。

DallasSemiconductorとRSAData Security Inc.の間の契約により、Crypto iButtonを使用してRSA暗号化とデジタル署名を実行するすべての人に有料ライセンスが提供されるため、RSA暗号化テクノロジの追加ライセンスは必要ありません。 NVRAMの内容を非常に迅速に消去する機能により、高いセキュリティが提供されます。この機能である高速ゼロ化は、ハッカーによる攻撃を受ける可能性のある高セキュリティデバイスの要件です。その高いセキュリティの結果として、Crypto iButtonは、米国国立標準技術研究所(NIST)によるFIPS140-1セキュリティ認証を獲得することが期待されています。

特別なオペレーティングシステムが設計され、Crypto iButtonのROMに保存されて、暗号化と、郵便サービスプログラムで必要とされるような汎用の金融取引をサポートします。 Java仮想マシンではありませんが、このアプリケーション用に設計されたEコマースファームウェアには、オブジェクト指向設計や、ダラスセミコンダクターのカスタム設計されたEコマーススクリプト言語を解釈して実行するバイトコードインタープリターなど、Javaとの類似点がいくつかありました。スクリプト言語の高級言語表現を、EコマースVMで解釈できるバイトコード形式にコンパイルするコンパイラも作成されました。 Eコマースファームウェアは主にUSPSアプリケーションを対象としていましたが、ファームウェアは、さまざまなアプリケーションに適したさまざまな一般的な電子商取引モデルをサポートしています。 Eコマースファームウェアは、Sun MicrosystemsInc。によって開発されたSimpleKey-Management for Internet Protocol(SKIP)などの安全な情報交換のための暗号化プロトコルもサポートします。EコマースiButtonとそれをプログラミングするためのSDKは、暗号で詳細に説明されています。 iButtonホームページ(「参考文献」を参照)。

Java接続

ダラスセミコンダクタのファームウェア設計チームは、Crypto iButtonハードウェアプラットフォーム用のEコマースオペレーティングシステムとVMの設計経験があれば、JavaベースのCryptoiButton用の新しいオペレーティングシステムの利点をすぐに理解できます。Java iButtonを使用すると、膨大な数の既存のJavaプログラマーが、Sun Microsystemsから入手可能な標準ツールでコンパイルし、Java iButtonにロードし、オンデマンドで実行してさまざまな金融アプリケーションをサポートできるアプレットの作成方法を簡単に学ぶことができます。Java Card 2.0仕様は、小さなプロセッサで利用できる限られたリソースを使用して、JVMとランタイム環境の便利なバージョンを実装する機会を提供しました。

Crypto iButtonは、プログラムとデータの保存にNVRAMを利用するため、Javaを実行するための優れたハードウェアプラットフォームも提供します。 6キロバイトの既存のNVRAMと、既存のiButtonフォームファクタで最大128キロバイトまでNVRAM容量を拡張できる可能性があるため、Crypto iButtonは、NVRAMにある比較的大きなJavaスタックでJavaを実行できます。このメモリは、プロセッサの実行時に従来の高速RAMとして機能し、Javaリングがリーダーから切断されている間、リチウムエネルギーによってマシンの完全な状態が保持されます。したがって、永続オブジェクトを特別な方法で処理する必要はありません。オブジェクトはスコープに応じて永続するかどうかに関係なく、プログラマーはオブジェクトの永続を完全に制御できます。標準のJavaと同様に、Java iButtonには、スコープ外のオブジェクトを収集し、将来の使用のためにメモリをリサイクルするガベージコレクタが含まれています。アプレットは、必要に応じて何度でもJavaiButtonにロードおよびアンロードできます。現在JavaiButtonにロードされているすべてのアプレットは、iButtonがBlue Dot受容体と接触していないときはいつでも、ゼロ速度で効果的に実行されています。

Java Card 2.0仕様が提案されたため、DallasSemiconductorはJavaSoftのライセンシーになりました。この合意では、Java Card 2.0実装の開発と、真のJavaスタックやガベージコレクションをサポートする機能など、Crypto iButtonsNVRAMが提供する独自の機能を活用する「プラス部分」の設計が求められました。継続的に動作するリチウム駆動の時刻クロックと高速で大整数のべき剰余エンジンの追加により、プラス部分を備えたJava Card2.0のJavaiButton実装は、高度なJavaCardのエキサイティングな新機能セットを約束します。アプリケーション。

あなたのお金を安全に保つ

Crypto iButtonハードウェアプラットフォームは、秘密鍵やその他の機密情報がハッカーに利用可能になるのを防ぐために特別に設計された独自の特別な機能のセットを提供します。図1は、CryptoiButtonの内部構造の詳細を示しています。プロセッサ、ROM、およびNVRAMメモリを含むシリコンダイは、すべての電気的接触が行われるバリア基板に冶金学的に結合されています。このバリア基板とシリコン製造で採用されている3層金属構造技術は、NVRAMに保存されているデータへのアクセスを効果的に拒否します。これらの障壁を突破しようとすると、NVRAMデータはすぐに消去されます。この構築手法と、秘密鍵やその他の機密データを保存するためのNVRAMの使用により、EEPROMメモリよりもはるかに高度なデータセキュリティが提供されます。 Crypto iButtonと外界との間の通信パスが単一のデータ回線に制限されているという事実は、ハッカーがアクセスできる信号の範囲を制限することにより、ハードウェア攻撃に対する追加のセキュリティを提供します。

さらに、プロセッサ自体は、10〜20メガヘルツの範囲で動作する不安定なリングオシレータによって駆動されるため、プロセッサのクロック周波数は一定ではなく、外部手段によって決定することはできません。これは、プロセッサのクロック信号がリーダーによって注入されるため、ホストプロセッサによって正確に決定される代替デバイスの設計とは異なります。クロックの外部制御は、ハッカーに貴重なツールを提供します。ハッカーは、同じ数のクロックサイクルを適用するだけで、そのようなプロセッサを実行の同じポイントまで繰り返しサイクルできるからです。クロックの制御は、計算エラーを誘発し、それによって最終的に秘密の暗号化キーを明らかにすることができる情報を取得する手段も提供します。Java iButtonでは32キロヘルツの水晶発振器を使用して、プロセッサのクロックに依存しない一定の適切に制御された周波数で時刻クロックを動作させます。

ダラスセミコンダクターは、個人所有用に最適化されたハードシェルパッケージを備えた2,000万を超える物理的に安全なメモリとコンピューターを製造してきました。したがって、Java iButtonは、市場で非常に成功していることが証明されている製品の長いラインの最新かつ最も複雑な子孫にすぎません。そのステンレス鋼の鎧で、それは個人の所有物として頻繁に使用され乱用される可能性が高いクラスの製品に最も耐久性のあるパッケージを提供します。iButtonフォームファクタは、リング、時計バンド、キーフォブ、財布、ブレスレット、ネックレスなど、さまざまなパーソナルアクセサリに取り付けることができるため、ユーザーは自分のライフスタイルに合ったバリエーションを選択できます。