2 ポイント 投稿者 zcxv8048 17 일 전 | まだコメントはありません。 | WhatsAppで共有

こんにちは。
プロジェクトをAI Agentに渡すたびに重要なデータを毎回手作業で一つずつ消すのがあまりにも面倒だったので、コマンド一発で情報を隠せる自動化ツールを自作してみました。
既存のプロジェクトをAIエージェントに渡す前に、ソース内にハードコードされたAPIキー・認証情報・証明書などが外部へ流出するのを事前に防ぎます。

  • 正規表現で見つけた疑わしい文字列が、実際にコードの「文字列リテラル(String Literal)」内にあるかを構文解析によって二次検証します。

  • 単純なマスキングではなくコードの自動変換(Auto-fix)
    ハードコードされたシークレットを.envファイルへ切り出し、ソースコードは各言語に合わせてprocess.env.API_KEYSystem.getenv()@Valueなどへ自動置換します。

  • プラットフォーム別に最適化されたファイル処理:
    単なるソースコードだけでなく、iOSのInfo.plist、Androidのbuild.gradle、Flutterのpubspec.yaml、Springのapplication.ymlなど、ビルド/設定ファイル内のシークレットもそれぞれのパーサーを通して精密に分離できるようにしました。

主な機能は

ハードコードされたキー、URLなどのシークレットを.envに分離し、コードを自動変換する

blinder blind   
  
- String apiKey = "sk_live_abc123..."      # Before  
+ String apiKey = BuildConfig.STRIPE_KEY   # After (빌드 가능)  
  

AI Agent向けの読み取り専用プロジェクトを生成する

blinder mask  
  
- apiKey: "AIzaSy9xK2mP3rT..."       # Before  
+ apiKey: "__BLINDER_VAR__FIREBASE_API_KEY"  # After (빌드 불가)  

があります。

Node.js環境でグローバルインストールしてすぐに試せます。

Bash
npm install -g github:YellowC-137/Blinder

現在はiOS、Android、Flutter、Node.js、React、Spring Boot、Ruby環境をサポートしており、継続的にプラットフォームを追加しています。

初期段階のオープンソースのため、至らない点があるかもしれません。
たくさんのフィードバックをいただけるとうれしいです。ありがとうございます!

GitHub Repo: https://github.com/YellowC-137/Blinder

まだコメントはありません。

まだコメントはありません。