Json.NETとSystem.Text.Json

https://qiita.com/TsuyoshiUshio@github/items/4f497bfdd660a3142561
https://www.umayadia.com/Note/Note009VBJSON.htm
Json.NETは、JSONを扱うためのサードパーティライブラリ。
LinqToJsonを使えばJavaScriptに近い粘土細工のように自由なデータ形式を扱うことができる。
あまりに便利なのでマイクロソフトASP.NET CoreですらこのJSON.NETに依存していた。
System.Text.Jsonは、その依存をなくすためにJson.NET相当の機能をコアライブラリに取り込んだもの。



System.Text.Jsonで、Linq to Jsonに相当するのは「System.Text.Json.Nodes.JsonNode.Parse」。
https://qreat.tech/3292/

鍵配送問題

https://www.weblio.jp/content/%E9%8D%B5%E9%85%8D%E9%80%81%E5%95%8F%E9%A1%8C%E3%81%A8%E5%85%AC%E9%96%8B%E9%8D%B5%E6%9A%97%E5%8F%B7
https://kemur.jp/sirigula_20220829
秘密通信において暗号化と復号化に同じ鍵を利用する方式だと、鍵を相手に送らなければ暗号化したデータを相手側で復号化してもらえない。
しかし鍵を安全に送るには、その鍵も暗号化した状態で送らなければならない。
すると「「鍵」を暗号化する鍵」が必要になる。すると「「「鍵」を暗号化する鍵」を暗号化する鍵」が必要となり、さいしょに使う鍵をどうやっても安全に送れないという問題が発生する。
これが鍵配送問題である。



公開鍵暗号は、この問題を解決する。
公開鍵と秘密鍵のペアを作成して、公開鍵で暗号化したものを秘密鍵でしか復号化できないようにすることで、「盗聴などで(暗号化の)鍵が知られても問題ないこと」と「(復号化の)鍵を持っている人にしか秘密のデータを復号化できないこと」を両立する。
実際には公開鍵自体の信用度(それが本当に相手が作った鍵なのか)という問題もあるので、これで秘密通信にまつわる全ての問題が解決するわけではない。
(参考:信用の輪 https://linuxjf.osdn.jp/JFdocs/mutt-gnupg-howto/understand-validity.html)


「鍵配送問題」という概念は覚えてるのだが、なぜかこの単語は忘れてしまうのでメモ。

標準SQLのANY, SOME, EVERY

https://qiita.com/dico_leque/items/87cb046630a55c7eead3
普段使わないが、ANY, SOME, EVERYという標準関数がある。これはsum等の集約関数の一種でboolを受け取ってその一部がtrueであるか、全体がtrueであるかの結果を得るというもの。
ANYとSOMEは名前が違うだけで同じ集計をする。
ただし、ほとんどのDBMSには実装されていないので、やはり実際には使われる機会はほぼ無い。

eSIM

https://ja.wikipedia.org/wiki/ESIM
従来の物理カードを差し込むSIMとは違い、契約情報を電子的に端末内に書き込んで使うSIM。
電子的な書き換えだけで済むため、契約時にSIMカードを郵送してもらう必要がない。
ただし当然だが機種変更をしたときにSIMカード抜き差しで移行を行うわけにはいかなくなり、キャリアに対してeSIMを利用する端末の変更手続きが必要になる。
SIMカードという実体が無いため、複数のeSIMを登録しておいて物理操作なしに回線を切り替えるといったこともできる。
そもそも普通に使うなら数年に1度しか触る機会が無い部品なので、どっちでもいいと言えるかもしれない。

IPAファイル

https://ja.wikipedia.org/wiki/IPA_(%E3%83%95%E3%82%A1%E3%82%A4%E3%83%AB%E3%83%95%E3%82%A9%E3%83%BC%E3%83%9E%E3%83%83%E3%83%88)
AndroidにおけるAPKファイルのiOS版のようなもの。
APKと同様にビルド結果やマニフェストをzipアーカイブしたファイルである。
AltStoreというアプリでサイドローディングできる。