では、本格的に開発を開始いたしましょう。
その前に、少しだけお話をさせてください。
本講座では、なんちゃて開発を行うつもりはございません。
マジで開発を行います!
ただし、私も守秘義務を守る必要がございます。
これに抵触する部分は避けてお話を致します。
マイコン系では秘密のノウハウが多く存在致します。
こういった部分については、前もって「これは教育用です」と前置きを致します。
オープン系、多くはLinuxを用いたシステムの場合については、細かくお話できると思います。
お話が少し変わりますが、ChatGPTを使用しソフトウェアを作成するとしても、本当に考慮した設計は非常に難しいと思っています。
・・・
ここで例を出してみましょう。
Linuxでソフトを設計し、そのソフトの動きを緊急で停止させたい場合、キーボードの特定のボタンを押したり、コマンドと呼ばれるものを入力致します。
ここで言うコマンドとは「kill」コマンドと呼ばれているモノです。
で、この「kill」コマンドと言うモノを入力すると、プログラムは緊急停止致します。
この時に、何が起きているのか?
どうして、プログラムが止まるのか?
と言ったことまで考慮した設計になっていないと、、、ハッキングされるわけです。
・・・
「kill」コマンドを入力すると、シグナルと言うモノが発生いたします。
シグナルにもいろいろございまして、ここで言うシグナル名は「SIGTERM」です。
で、プログラムは、この「SIGTERM」を受信した場合には、このシグナルを受信するための仕組みを組み込み、そして受信した場合は、一時ファイルを一掃し、使用中のリソースを全て解放する必要がございます。
上記作業を「クリーンアップ」と申します。
リソースと言うのは後で解説いたします。
一時ファイルと言うのは、ファイルと言うモノがあるのですが、、、
これをUSBメモリやハードディスクに記録する際、直接USBメモリなどに記録するわけではなく、一時的に情報を置く場所があるのです。
これを「一時ファイル」と言います。
基本的に記録しようとしている情報が暗号化されるように指示されていても、この一時ファイルの段階では暗号化されていない場合が多いです。
で、「kill」コマンドを使用してプログラムを緊急停止させると、この一時ファイルが残る場合があるのです。
もう一度言います。この一時ファイルは暗号化されていない場合が多い。
プログラムを緊急停止させた場合、これが残ってしまうのです。
それでもって、この一時ファイルに非常に重要な、なんといったらいいのでしょうか、例えば個人情報と言った機密情報がまともにさらけ出される場合がある。
これをハッキングする人がいるのです!!
これを阻止するプログラム構成とする必要があるのですが、、、
現在のChatGPTでは、ここまで考慮したソフトを自動作成させることは困難だと考えています!!
・・・
他にもいろいろございまして、、、
本当に考慮したソフトを現在のChatGPTで作成することは非常に困難だというのが私の考えです!
・・・
で、お話を元に戻しますが、、、
ここでは、これらについても議論致します。
セキュリティが主になると思いますが、この部分を深く知ることにより、コンピュータが自動作成するソフトウェアを遥かに超える信頼性の高いプログラムを設計できるようになります。
また、Linuxシステム自体を深く知るということは、、、
まあまあ、、、実は大変なことができるようになるのです。。。
今の段階では、お話を避けますが、、、
とんでもないことができるようになる。
「巨人の肩の上に立つ」と言うやつです!
・・・