ブロックチェーン ブロックチェーンの作り方 #1(概要と開発環境の準備) ブロックチェーンとは「分散型台帳技術」とも呼ばれ、中央の管理者なしに、P2Pネットワークで暗号資産やNFTなど「価値」の取引を可能にするための仕組みです。2008年にサトシナカモトという正体不明の人物(もしくは組織)によって、ビットコイン(P2P電子通貨システム)を実現するために発明されました。最近では暗号資産だけではなくブロックチェーンを活用したゲームやシステムを見かけることも多くなりましたね。... 2024.11.02 2025.03.23 ブロックチェーン
ブロックチェーン ブロックチェーンの作り方 #8(データ同期処理) 前回の記事 #7 では、各ノード間のデータ同期処理を検証するための検証用ノードを構築しました。最終回となる今回 #8 では各ノード間のデータ同期処理の実装を行います。 2025.03.22 2025.03.23 ブロックチェーン
ブロックチェーン ブロックチェーンの作り方 #7(ノード用サーバーの準備) 前回の記事 #6 まででブロックチェーンの実装がほぼ終わり、残すところ各ノード間のデータ同期処理の実装のみになりました。各ノード間のデータ同期処理を検証するため、実装に先立って検証用のサーバーを何台か用意しておく必要がありますので、今回 #7 ではノード用サーバーの構築手順をまとめてみました。 2025.03.16 2025.03.23 ブロックチェーン
ブロックチェーン ブロックチェーンの作り方 #6(各アカウントの残高チェック) 前回ブロックチェーンの作り方 #5 ではブロックチェーンの中核を担うマイニング処理とチェーンの受信処理をを実装しました。今回 #6 ではコインを持っていないユーザーが送金できてしまうという問題の対策として各アカウントの残高チェックを実装していきます。記事一覧ブロックチェーンの作り方 #1(概要と開発環境の準備)ブロックチェーンの作り方 #2(トランザクションの送受信)ブロックチェーンの作り方 #3... 2025.03.08 2025.03.23 ブロックチェーン
ブロックチェーン ブロックチェーンの作り方 #5(マイニング処理) 前回ブロックチェーンの作り方 #4 ではジェネシスブロックとチェーンの土台となる部分を実装しました。今回 #5 ではブロックチェーンの中核を担うマイニング処理を実装していきます。記事一覧ブロックチェーンの作り方 #1(概要と開発環境の準備)ブロックチェーンの作り方 #2(トランザクションの送受信)ブロックチェーンの作り方 #3(トランザクションの検証)ブロックチェーンの作り方 #4(ジェネシスブロ... 2025.02.22 2025.03.23 ブロックチェーン
Linux Apache httpd 2.4.63(TLS1.3対応)+ HTTP/2 + Brotli インストールメモ 2025年1月23日 Apache httpd 2.4.63 がリリースされました。約半年ぶりのバージョンアップです。Apache httpd 2.4.63 では mod_md モジュールがアップデートされたほか、各種機能の不具合が改善されています。そこで今回は AlmaLinux8、RockyLinux8、CentOS Stream 9、AlmaLinux9、RockyLinux9 に Apac... 2025.02.05 Linux
ブロックチェーン ブロックチェーンの作り方 #4(ジェネシスブロックとチェーンの実装) ブロックチェーンの作り方 #2 と #3 で、トランザクションの送受信と検証処理がほぼ完成しました。今回 #4 では、ブロックチェーンのジェネシスブロックとチェーン部分を実装していきます。 2025.01.11 2025.03.23 ブロックチェーン
ブロックチェーン ブロックチェーンの作り方 #3(トランザクションの検証) 前回 ブロックチェーンの作り方 #2 では、トランザクションの送信とノード側での受信処理を実装しました。#1でも書きましたが、ブロックチェーンのノードは、他のノードや利用者を一切信用できず不正にコインを手に入れようとしてくることを前提にプログラムを実装しなければなりません。そのためトランザクションの処理についても不正なトランザクションをトランザクションプールに登録させないように、しっかり検証する必... 2024.12.28 2025.03.23 ブロックチェーン
ブロックチェーン ブロックチェーンの作り方 #2(トランザクションの送受信) 前回 ブロックチェーンの作り方#1 では、今回作成するブロックチェーンの概要と Python でブロックチェーンを作成するための開発環境の準備について説明しました。今回 #2 では、ブロックチェーンに格納されるトランザクションの処理を実装します。具体的には、利用者がトランザクションを送信するためのプログラムと、ノード側でトランザクションを受信しトランザクションプールに保存するプログラムを作成します... 2024.12.21 2025.03.23 ブロックチェーン
その他 LINEのアクセス権が「写真の追加のみ」なった場合の対処法 ある日突然、iPhone の LINE の写真ライブラリへのアクセス権が「なし」か「写真の追加のみ」になってしまい、LINE から写真が送信できなくなってしまいました。通常であれば写真ライブラリへのアクセス権はこの他に「制限付きアクセス」と「フルアクセス」が表示されるはずなのですが、どこをどういじっても表示されません、、そこで今回は、LINEのアクセス権が「写真の追加のみ」になってしまった場合に、... 2024.12.07 その他
クラウド ThunderbirdのMicrosoft OAuth認証時に「ここからアクセスすることはできません」と表示された場合の対処法 Thunderbird で Microsoft Exchange Online のメールアカウントを設定する際に、Microsoft OAuth 認証が必要になります。通常は問題なく認証が成功するのですが、Microsoft Intune の条件付きアクセスのポリシーで、許可する条件に「デバイスは準拠しているとしてマーク済みである必要があります」を設定していると「ここからアクセスすることはできませ... 2024.10.06 クラウド
Linux VirtualBox が Appleシリコン搭載Macに対応したので使ってみた 2024年9月26日、VirtualBox 7.1.2 がリリースされ、Appleシリコン(M1/M2/M3)搭載Macに正式対応したようです。(macOS/Arm UI のベータ版表記が削除されています)Appleシリコン搭載Macを使っている方にとっては待ちに待った対応ではないでしょうか。さっそく、よく利用されているLinuxディストリビューション、Ubuntu、AlmaLinux、Rocky... 2024.09.29 2024.09.30 Linux
Linux /usr/ 配下のログがローテーションできない場合の対処方法 つい先日新しいWebサーバーを設定したのですが、logrotate で /var/log/ 配下のログは問題なくローテーションされるのに /usr/local/apache2/logs/ 配下のログのみローテーションされないという現象がありました。そこで今回は、/usr/ 配下のログがローテーションできない場合の原因と対処方法をまとめてみました。 2024.07.27 Linux
プログラム VSCode + SFTP の安全な使い方 VSCode(Visual Studio Code)の SFTP 機能拡張をインストールすると、その名の通り SSH File Transfer Protocol で、ローカルにあるファイルやディレクトリをサーバーにアップロードすることができます。便利な機能拡張なのですが、認証情報をプロジェクトフォルダ配下に保存するため、意図せず認証情報がサーバーにアップロードされ、場合によっては公開されてしまう... 2024.07.20 プログラム
プログラム VSCode + Git Graph での Git の使い方メモ 久しぶりに VSCode(Visual Studio Code)を使う機会があったのですが、いつの間にか Git用の便利な機能拡張が充実していました。これまではターミナルから直接 Gitコマンドを叩いて使っていたのですが、機能拡張を使った方が Gitリポジトリの視認性も良くて効率的に作業を行える上にミスも減らせそうです。そこで今回は、VSCode と Git Graph 機能拡張を使った Git ... 2024.07.15 プログラム
Zabbix Zabbix サーバーのアップグレード手順 約10年ぶりに Zabbixサーバーをアップグレードする機会があったのですが、いつからか公式のアップグレード手順のドキュメントがとても充実していて、スムーズに作業を行うことができました。そこで今回は、どの Zabbix公式ドキュメントを参照すればよいかを踏まえつつ、例として Zabbixサーバー 6.4.x から 7.0 へのアップグレード手順をまとめてみました。関連記事:Zabbix 7.0 イ... 2024.07.13 Zabbix
Linux Git のコミットやタグをSSH鍵で署名/検証するための設定メモ Git には、コミットやタグに署名を付与することで、そのコミットやタグが確実に本人のものであることを検証できる仕組みがあるのですが、署名にGPG鍵を使うため設定がややこしく使うのには少しハードルが高い仕組みでもありました。しかし、Git バージョン 2.34 以降は SSH鍵を使った署名に対応していますので、手軽に Git のコミットやタグに署名を付与し検証することができるようになりました。そこで... 2024.07.08 2025.02.20 Linux
プログラム 【Git初心者向け】メールアドレスの設定には注意せよ! Git 使うときに最初にすべきことは、ユーザー名とメールアドレスを設定することなのですが、ここで設定したメールアドレスは、コミットするたびに記録されて誰でも閲覧できてしまうため注意が必要です。そこで今回は、Git のメールアドレスはどのように設定すれば良いのか、パターン別にまとめてみました。 2024.07.01 プログラム
Zabbix Zabbix 7.0 インストールと管理画面のSSL設定メモ 2024年6月4日 Zabbix 7.0 がリリース されました。約2年4ヶ月ぶりのメジャーバージョンアップです。Zabbix 7.0 は、長期サポート(LTS)リリースのためサポート期間が5年と長いのが特徴です。Zabbix 7.0 では、ブラウザベースのシナリオ監視、Zabbixプロキシの冗長化と負荷分散、多要素認証など魅力的な機能がたくさん追加されています。そこで今回は、Zabbix 7.0... 2024.06.30 2025.02.12 Zabbix
Linux Rocky Linux 9.4 LAMP環境構築メモ【Apache2.4+MySQL8.0+PHP8.3】 2024年5月9日 Rocky Linux 9.4 がリリース されました。Rocky Linux 9.4 では Python 3.12 が利用可能になり、Ruby 3.3.0、PHP 8.2、nginx 1.24、MariaDB 10.11、PostgreSQL 16が新しいモジュールストリームとして追加されています。また、Git がバージョン 2.43.0 に、Git LFS がバージョン 3... 2024.05.28 Linux
Linux AlmaLinux 9.4 LAMP環境構築メモ【Apache2.4+MySQL8.0+PHP8.3】 2024年5月6日 AlmaLinux 9.4 がリリース されました。AlmaLinux 9.4 では Python 3.12 が利用可能になり、Ruby 3.3.0、PHP 8.2、nginx 1.24、MariaDB 10.11、PostgreSQL 16が新しいモジュールストリームとして追加されています。また、Git がバージョン 2.43.0 に、Git LFS がバージョン 3.4.1... 2024.05.25 2024.05.28 Linux
Linux Ubuntu Server 24.04 LAMP環境インストールメモ【Apache2.4+MySQL8.0+PHP8.3】 Ubuntu(ウブントゥ)は、Debian をベースに開発されている Linuxディストリビューションのひとつです。Ubuntu といえばデスクトップ版のイメージがありますが、サーバー版の Ubuntu Server も Webサイト向けの Linuxディストリビューションとして圧倒的なシェアを誇っています。また Ubuntu Server は、利用可能なソフトウェアパッケージが多く比較的バージョ... 2024.05.21 2024.05.25 Linux
Linux AlmaLinux と Rocky Linux の比較メモ(2024年12月版) CentOS Linux の提供が終了したことを受けて、CentOS の代わりとなる「AlmaLinux(アルマリナックス)」と「Rocky Linux (ロッキーリナックス)」という2つの新しい Linux ディストリビューションが開発されました。どちらも CentOS Linux と同じく RHEL(Red Hat Enterprise Linux)互換のため CentOS ほぼ同じように使え... 2024.05.11 2024.12.15 Linux
Linux プライベート認証局:設定の意味を理解して構築する手順 プライベート認証局(「プライベートCA」や「オレオレ認証局」とも呼ばれます)は、会社など限られた組織内でのみ運用する認証局です。認証局の構築用スクリプトでプライベート認証局を構築運用していたのですが、トラブルが発生した時に手も足も出ず苦労したことがありました。そこで今回はOpenSSLを使って設定の意味を理解しながらプライベート認証局を構築する手順をまとめてみました。OpenSSLのバージョン今回... 2024.05.01 2024.07.27 Linux
Linux OpenSSLの設定ファイル(openssl.cnf)の使い方メモ つい先日 OpenSSL の設定ファイル(openssl.cnf)を作成する機会があったのですが、設定ファイルの書き方やオプションの指定方法などがさっぱり分からず苦労しました、、、秘密鍵の作成などツールとして OpenSSL を使っている方は多いかと思いますが、OpenSSL の設定ファイルの使い方についてはあまり知られていないのではないでしょうか? そこで今回は、OpenSSL の設定ファイルに... 2024.03.10 2024.05.11 Linux
クラウド DMARC 導入時の注意点と設定方法 DMARC(ディーマーク)は、Domain-based Message Authentication, Reporting, and Conformance の略称で、RFC7489 で情報が提供されています。DNSサーバーに DMARCレコードと呼ばれるポリシーを登録することにより、自分が所有しているドメインを送信元としたメールを受信した先でそのポリシーに従ってメールを扱うように指定することがで... 2024.02.04 2024.05.11 クラウド
Linux SSLメールサーバ構築メモ Postfix + Dovecot【2024年版】 クラウドサービスの普及により自前でメールサーバを構築することは少なくなりましたが、自前で構築したメールサーバは他のシステムと連携しやすいなど自由度が高いのが魅力です。ただし、セキュリティの確保も自前でしっかり行わなければなりません。そこで今回は、SSL/TLSに対応したメールサーバを構築した時の手順をメモしておきました。メールサーバの設定概要メールサーバの設定概要は、以下の通りです。ドメイン名やI... 2024.02.04 2024.05.11 Linux