Skip to content

OTR_CommonParts

nishi_74322014 edited this page Oct 27, 2026 · 1 revision

共通部品

概要

Open 棟梁の Public 名前空間(Touryo.Infrastructure.Public.<カテゴリ>)には、ユーティリティ的な共通部品が揃っている。

  • ユーティリティ的な処理を自作する前に、既存の部品を探す。
  • セキュリティに関わる処理(エンコード、ハッシュ、暗号)は特に自作しない。
  • メソッドの正確なシグネチャは、ソース(API リファレンスはソースから Doxygen で生成)を確認する。

詳細

文字列のチェック・変換(Public.Str)

クラス 用途 代表的なメソッド
StringChecker 種別チェック IsNumeric / IsHankaku / IsZenkaku / IsKatakana / IsKanji / Match
FormatChecker 書式チェック(日本向け) IsJpZipCode / IsJpTelephoneNumber / IsJpCellularPhoneNumber
StringConverter 変換 ToZenkaku / ToHankaku / ToHiragana / ToKatakana
FormatConverter 書式変換 丸め、西暦・和暦、桁区切り
JIS2k4Checker JIS2004 の追加文字・サロゲートペア チェック、削除

エンコード(Public.Str.CustomEncode)

メソッド 用途
HtmlEncode / HtmlDecode HTML エンコード(XSS 対策)
UrlEncode / UrlDecode URL エンコード
ToBase64String / ToBase64UrlString など Base64、Base64URL
ToHexString 16 進
StringToByte / ByteToString コードページを指定したバイトと文字列の変換

暗号・ハッシュ・署名(Public.Security)

Public.Security は独立したアセンブリ(NuGet パッケージ Touryo.Infrastructure.Public.Security)。net48 / net10.0 の両対応。

クラス 用途
GetHash ハッシュ(アルゴリズム、ストレッチ回数を指定可)
GetKeyedHash / MsgAuthCode キー付きハッシュ、MAC
GetPassword パスワード・乱数の生成(Base64UrlSecret など)
GetPasswordHashV2 パスワード・ハッシュ(V1 は非推奨)
SymmetricCryptography / ASymmetricCryptography 共通鍵暗号、公開鍵暗号
DigitalSign ほか 電子署名(X.509、XML、ECDSA など)
JwtJWS_* / JwtJWE_* JWT(JWS 署名、JWE 暗号)。OIDC の id_token の検証などに使う
  • net10.0 では、IdentityImpersonation(区間偽装のサンプル)と CNG ベースの ECDH 鍵交換はビルドされない。

ファイル・IO(Public.IO)

クラス 用途 ランタイム
ResourceLoader / EmbeddedResourceLoader ファイル・埋め込みリソースの読み込み(%変数% を展開する) 両方
DeflateCompression Deflate 圧縮 両方
ExponentialBackoff 指数バックオフ(リトライ) 両方
Zipper / UnZipper ZIP 圧縮・展開 net48 のみ
BinarySerialize バイナリ・シリアライズ net48 のみ
  • net10.0 では、圧縮に DeflateCompression か標準ライブラリを使う。Win32 / WinProc(Windows API のラッパー)も net48 専用。

DTO・データ変換(Public.Dto)

  • DataToPoco / PocoToPoco:DataTable と POCO、POCO と POCO の詰め替え。

コーディング・エージェントに任せる場合

  • スキル opentouryo-common-parts(用途から部品を探す地図)を使わせる。
  • エージェントは標準ライブラリや自作で済ませがちなので、「既存部品を探したか」をレビューで見る。特にセキュリティ系。

参考


Tags: 再構築

NetDevInfraWiki

マイクロソフト系技術情報 Wiki
Open 棟梁 Wiki
開発基盤部会 Wiki

移行管理: DONE / TODO

Clone this wiki locally