| 開発者 | Solderpunk 他 |
|---|---|
| 紹介された | 2019年6月 |
| Webサイト | ジェミニプロトコル |
| ファイル名拡張子 |
.gmi、.gmni、.gemini |
|---|---|
| インターネットメディアの種類 | text/gemini(非公式) |
| タイプコード | 文章 |
| 開発者 | Solderpunk 他 |
| 最新リリース | 0.24.1 2024年8月28日 |
| フォーマットの種類 | マークアップ言語 |
| オープンフォーマット? | はい |
| Webサイト | geminiprotocol.net/docs/specation.gmi |
Gemini は、HTTPやGopherに似た、リモート ドキュメントにアクセスするためのアプリケーション層インターネット通信プロトコル です。Gemini には、他のドキュメントへのリンクを可能にする、一般に「gemtext」と呼ばれる特別なドキュメント形式が付属しています。Solderpunk として知られる匿名の人物によって開始されたこのプロトコルは、共同で最終調整が行われており、2022 年 10 月時点では、標準化のためにIETF組織に提出されていません。 [アップデート]
歴史
Gemini プロジェクトは、2019 年 6 月に Solderpunk によって開始されました。追加の作業は、非公式のユーザー コミュニティによって行われました。Solderpunk の FAQ によると、Gemini は Gopher や HTTP を置き換えるものではなく、それらと共存することを意図しています。[1]開発の多くは Gemini メーリング リストで行われましたが、2021 年末にハードウェアの問題によりリストが消えてしまいました。[2] 2021 年 10 月に作成されたUsenetニュース グループcomp.infosystems.geminiは、 Big Eight階層で 8 年ぶりの新しいニュースグループでした。[3]
デザイン
Gemini仕様は、Geminiプロトコルと、 HTTPのHTMLに類似した「gemtext」と呼ばれるそのプロトコルのネイティブファイル形式の両方を定義します。設計はGopherに触発されていますが、接続にトランスポート層セキュリティ(TLS)を必須にしたり、ネイティブコンテンツタイプとしてハイパーテキスト形式を使用するなど、近代化されています。[4]
プロジェクトの目標であるシンプルさを実現するために、設計は意図的に簡単に拡張できないようになっています。[5]
プロトコル
Gemini はインターネット プロトコル スイートのフレームワーク内で設計されています。HTTP/S と同様に、Gemini はクライアント サーバー コンピューティング モデルにおける要求応答プロトコルとして機能します。Gemini サーバーは TCP ポート 1965 をリッスンする必要があります。たとえば、Gemini ブラウザーがクライアントになり、 Gemini サイトをホストしているコンピューターで実行されているアプリケーションがサーバーになる場合があります。クライアントはサーバーに Gemini要求メッセージを送信し、サーバーは応答メッセージを返します。Gemini は、リソース要求ごとに同じサーバーへの個別の接続を使用します。 [6]
Geminiはプライバシー関連の機能を備えたTLSの使用を義務付けており、初回使用時の信頼(TOFU)検証が強く推奨されています。[7]
Gemini リソースは、 URI スキームgemini:// を使用して、ネットワーク上でUniform Resource Locator (URL)によって識別され、配置されます。Gemini 要求は、 で終了するこのような URL のみで構成されます。Gemini 応答のヘッダーは、2 桁のステータス コード、スペース、および で終了する「メタ」フィールドで構成されます。サーバーが要求されたファイルを見つけることに成功した場合、「メタ」フィールドは返されるファイルのMIME タイプであり、ヘッダーの後にファイル データが続きます。
CRLFCRLF
Gemtext形式
Gemtext 形式は行指向で、行の最初の 3 文字でその種類が決まります。構文には、見出し、フラット リスト項目、書式設定されたテキスト、引用、リンク行のマークアップが含まれます。HTTP ハイパーテキストと同様に、URI はハイパーリンクとしてエンコードされ、ユーザーがGeminispaceと呼ぶ Gemini「ウェブ」内で相互リンクされたハイパーテキスト ドキュメントを形成します。[1]
ジェミニスペース
「ジェミニスペース」とは、ジェミニ コミュニティがジェミニ プロトコルを介してインターネット上に公開するパブリック リソース全体を指します。つまり、ジェミニは、ユーザーが簡単にアクセスできる他のリソースへのハイパーリンクを含むハイパーテキスト ドキュメントを備えた代替通信 Web にまたがっています。[1]
2024年7月現在、[アップデート]ジェミニスペースは、60万以上のURIをクロールして特定された、オンラインで知られている約3900のジェミニ出現(「カプセル」)で構成されています。[8]
ソフトウェア


Geminiソフトウェアリストには、クライアント、サーバー、ライブラリ、ツールが含まれています。[9 ] Mozz.usなどの
GeminiからHTTPへのプロキシサーバーゲートウェイは、GeminiをサポートしていないWebブラウザーで使用できます。[10]
受付
Gemini はそのシンプルさが評価されているが、「通常のウェブブラウザを使用するユーザーを排除している」と批判されている。[11] Gemini の有用性は、「Gemini で利用できるコンテンツの種類と、それが魅力的かどうかに依存する」と言われている。[5] Stéphane Bortzmeyer は、 Gemini はレトロだが現代的な機能を備えていると述べている。[12]
参照
参考文献
- ^ abc 「Project Gemini FAQ」。2023年9月27日時点のオリジナルよりアーカイブ。2023年9月27日閲覧。
- ^ 「Gemini Info Page」。2021年10月20日時点のオリジナルよりアーカイブ。2021年10月20日閲覧。
- ^ “Gemini Usenet Newsgroup”. 2021年10月26日時点のオリジナルよりアーカイブ。2021年10月26日閲覧。
- ^ 「Project Gemini Speculative 仕様 v0.16.1」。gemini.circumlunar.space。2023-03-23。5 text/gemini メディア タイプ。
レスポンス本文のタイプ「text/gemini」は、gophermaps と Markdown からインスピレーションを得た一種の軽量ハイパーテキスト形式です。
- ^ ab Edge, Jake (2021-02-10). 「別の世界を訪問」. lwn.net . 2021-02-19閲覧。
- ^ 「Project Gemini Speculative 仕様 v0.16.1」。gemini.circumlunar.space。2023-03-23。1概要。
接続は単一のトランザクションの終了時に閉じられ、再利用することはできません。
- ^ 「Project Gemini Speculative Speculative 仕様」。gemini.circumlunar.space。2020-11-29。2021-05-12にオリジナルからアーカイブ。2021-06-25に取得。4.2サーバー証明書の検証。クライアントは、
TLS接続を好きなように検証できます(まったく検証しないことも含む)が、強く推奨されるアプローチは、自己署名証明書を第一級市民として扱う軽量の「TOFU」証明書ピンニングシステムを実装することです。
- ^ 「ジェミニ空間の統計」2021年2月11日にWayback Machineにアーカイブ。プロキシgemini://gemini.bortzmeyer.org/software/lupa/stats.gmi
- ^ 「ジェミニソフトウェア」。
- ^ 「Mozz.usについて」。
- ^ Proven、Liam(2022年1月27日)。「トースターフレンドリーな代替ウェブプロトコルGeminiが排他的な徒党を組むとして批判を浴びる」The Register。
- ^ 「Gemini、レトロに見える最新のプロトコル」。archive.fosdem.org 。 2022年10月30日閲覧。
外部リンク
- 公式サイト
- プロジェクト ジェミニ FAQ
- Gopher、Gemini、そして小規模インターネットの台頭: Linux Magazineの「Web を超えて」
- Mozz.us Gemini-HTTP プロキシ
