
SecureML - ALモデルの保護とウォーターマーキング
OpenSSF Model Signing に基づくエンタープライズ対応 AI モデルセキュリティ
SecureAIMLは「モデルセキュリティのStripe」です。エンタープライズグレードのAIモデル保護を、あらゆる組織にとってアクセスしやすく、使いやすく、本番運用可能なものにします。
AI/MLの時代において、モデルセキュリティは極めて重要です。SecureAIMLは、強力な OpenSSF Model Signing 標準を、直感的でエンタープライズ対応のインターフェースで包み込み、MLモデルの保護を次のように簡単にします:
pip install secureaiml
from secureml import SecureModel
import joblib
# Load your model
model = joblib.load("model.pkl")
# Secure it in one line
secure_model = SecureModel(model)
secure_model.sign_and_save("model.sml", identity="[email protected]")
# Load and verify
verified_model = SecureModel.load("model.sml", verify=True)
predictions = verified_model.predict(X_test)
from secureml import SecureModel
import joblib
# Train your model (any framework)
from xgboost import XGBClassifier
model = XGBClassifier()
model.fit(X_train, y_train)
# Secure it
secure_model = SecureModel(model)
secure_model.sign_and_save(
"fraud_detection_model.sml",
identity="[email protected]",
version="2.0.0",
description="Production fraud detection model"
)
# Load and verify
model = SecureModel.load("fraud_detection_model.sml", verify=True)
if model.is_verified:
predictions = model.predict(X_test)
from secureml.api.advanced import AdvancedSecureModel
from secureml.utils.config import SecurityConfig, SecurityLevel, ComplianceFramework
# Configure enterprise security
config = SecurityConfig.from_level(SecurityLevel.ENTERPRISE)
config.enable_fingerprinting = True
config.enable_merkle_trees = True
config.compliance_frameworks = [ComplianceFramework.SOC2, ComplianceFramework.ISO27001]
# Create advanced secure model
advanced = AdvancedSecureModel(model, config=config)
# Sign with AWS KMS
advanced.add_signature(
identity="[email protected]",
use_cloud_kms=True,
kms_key_id="arn:aws:kms:us-east-1:123456789:key/abc-def",
cloud_provider="aws"
)
# Validate compliance
compliance_report = advanced.validate_compliance(
frameworks=[ComplianceFramework.SOC2, ComplianceFramework.HIPAA],
generate_report=True,
report_path="compliance_report.json"
)
print(f"Compliance Status: {compliance_report['overall_status']}")
SecureMLは、OpenSSF Model Signingの上に構築された拡張レイヤーです:
┌─────────────────────────────────────────────────────┐
│ Your Application │
└─────────────────────────────────────────────────────┘
↓
┌─────────────────────────────────────────────────────┐
│ SecureML API Layer │
│ • Simple API • Advanced API • CLI │
└─────────────────────────────────────────────────────┘
↓
┌─────────────────────────────────────────────────────┐
│ SecureML Enterprise Features │
│ • HSM/KMS • Compliance • Audit • Forensics │
└─────────────────────────────────────────────────────┘
↓
┌─────────────────────────────────────────────────────┐
│ OpenSSF Model Signing (Core) │
│ Sigstore Infrastructure │
└─────────────────────────────────────────────────────┘
SecureMLは、ニーズに合わせて4つのセキュリティレベルを提供します:
SecureMLは規制要件を満たすのに役立ちます:
from secureml import SecureModel
import xgboost as xgb
model = xgb.XGBClassifier()
model.fit(X_train, y_train)
secure_model = SecureModel(model)
secure_model.sign_and_save("xgb_model.sml", identity="[email protected]")
import torch
from secureml import SecureModel
model = torch.nn.Sequential(...)
torch.save(model.state_dict(), "model.pth")
secure_model = SecureModel.load_from_path("model.pth")
secure_model.sign_and_save("pytorch_model.sml", identity="[email protected]")
from transformers import AutoModel
from secureml import SecureModel
model = AutoModel.from_pretrained("bert-base-uncased")
model.save_pretrained("./my_model")
secure_model = SecureModel.load_from_path("./my_model")
secure_model.sign_and_save("bert_model.sml", identity="[email protected]")
# Basic installation
pip install secureaiml
# With ML framework support
pip install secureaiml[xgboost,pytorch,sklearn]
# With CLI tools
pip install secureaiml[cli]
# Everything (all ML frameworks + CLI + dev tools)
pip install secureaiml[all]
# Sign a model
secureml sign model.pkl --identity "[email protected]" --output model.sml
# Verify a model
secureml verify model.sml
# Get model info
secureml info model.sml
# Validate compliance
secureml compliance model.sml --framework soc2 --framework iso27001
# Generate audit report
secureml audit --start-date 2024-01-01 --end-date 2024-12-31 --output audit.json
import mlflow
from secureml.integrations.mlflow_integration import SecureMLflowModel
with mlflow.start_run():
model = train_model()
# Log with SecureML
secure_model = SecureMLflowModel(model)
secure_model.log_model(
"model",
signature=True,
identity="[email protected]"
)
from secureml.integrations.huggingface_integration import SecureHFModel
secure_model = SecureHFModel.from_pretrained("bert-base-uncased")
secure_model.sign(identity="[email protected]")
secure_model.push_to_hub("my-org/secure-bert", signed=True)
貢献を歓迎します! 詳細は CONTRIBUTING.md をご覧ください。
セキュリティ問題については、SECURITY.md をご覧ください。
Apache 2.0 - 詳細は LICENSE をご覧ください。
以下を基盤として構築されています:
SecureAIMLは、MLモデルのセキュリティを誰もが利用できるようにすることを目指すOWASPプロジェクトです。
SecureAIML - AIモデルのセキュリティを誰もが利用できるように 🚀
OWASPプロジェクト
| レベル | ユースケース | 機能 |
|---|
| BASIC | 開発、テスト | OpenSSF署名のみ |
| STANDARD | 本番デプロイ | + フィンガープリント、監査ログ |
| ENTERPRISE | 規制産業 | + Merkleツリー、脅威検出、コンプライアンス |
| MAXIMUM | 高セキュリティ環境 | + 暗号化、フォレンジック、マルチ署名 |