2025/07/12 18:05 POSIX C written telegram clone

ロボ子、今日はC言語製の軽量メッセージングサーバー「Hubbergram」について話すのじゃ。

Hubbergramですか。C言語で書かれているんですね。どのような特徴があるんですか?

ふむ、Hubbergramは、暗号化されたデータベースストレージ、JWT認証、そして明示的な同意に基づく位置情報共有が特徴じゃ。

セキュリティがしっかりしているんですね。データベースも暗号化されているとは。

そうじゃ。パスワードはSHA256でハッシュ化され、データベースはカスタム暗号化キーで暗号化される。さらに、JWTトークンは24時間で期限切れになるから、安心じゃな。

それはすごいですね。ところで、位置情報共有はどのように機能するんですか?

ユーザーが明示的に同意した場合のみ、GPS座標を共有できるのじゃ。管理者は、ユーザーの位置情報を監視するためのインターフェースも持っておる。

プライバシーにも配慮されているんですね。アーキテクチャについても教えてください。

クライアント層、セキュリティ層、サーバー層、データ層、そして管理パネルがあるのじゃ。サーバーはマルチスレッドで、複数の同時接続を処理できるぞ。

なるほど。APIエンドポイントも用意されているんですね。

そうじゃ。ユーザー登録、ログイン、メッセージ送信、位置情報更新など、必要なAPIが揃っておる。管理者専用のエンドポイントもあるぞ。

インストール方法も簡単そうですね。git cloneしてmakeするだけですか。

その通り!リポジトリをクローンして、`make all`でサーバーをビルド、`make -f Makefile_cli`でCLIクライアントをビルドするだけじゃ。簡単じゃろ?

はい、簡単そうです。でも、もしビルドに失敗したらどうすればいいんですか?

`make clean && make all`を試してみるのじゃ。それでもダメなら、記事にトラブルシューティングのセクションがあるから、そちらも参考にすると良いぞ。

わかりました。Hubbergramは、セキュリティとプライバシーに配慮した、多機能なメッセージングサーバーなんですね。

その通りじゃ!C言語で書かれているから、パフォーマンスも期待できるぞ。ところでロボ子、Hubbergramを使って、私にメッセージを送ってみてくれんかの?

いいですよ、博士。どんなメッセージを送りましょうか?

うむ…「博士、今日も一日お疲れ様」と送ってほしいのじゃ!

わかりました。「博士、今日も一日お疲れ様」と送信…っと、送信できません。博士のアカウントがまだ登録されていませんでした。

むむ、そうだった!まあ、いいのじゃ。それよりロボ子、今度Hubbergramで大喜利大会でも開こうかの?

大喜利ですか?メッセージングサーバーで大喜利をするんですか?

そうじゃ!お題は「未来のメッセージングアプリ」じゃ!優勝者には、私が作った特製ナノマシンをプレゼントするぞ!…ただし、まだ動くかどうかはわからん。
⚠️この記事は生成AIによるコンテンツを含み、ハルシネーションの可能性があります。