私は、特別な銀行から当社に提供された POS プロジェクトに取り組んでいます。銀行は、USB ポートを介して POS とやり取りする DLL を提供しています。.NET C# 言語で記述された DLL を追加しました。相互運用性の問題が存在します。DLL 内に と呼ばれるメソッドがあります。DebitAndShareTheAmount
このメソッドには 2 つの主要なパラメータがありますP1,P2
。
P1
は平文の金額であり、平文で再度P2
差し引く必要がある金額です。したがって、//を呼び出すと、実際には私のアカウントに 1000-10=990 ドルの銀行貸方が行われ、私のアプリを使用しているショップには 10 ドルが支払われます。P1
DebitAndShare(1000,10);
問題は、C# プログラミングの基本的な知識があり、その SHOP のコンピューターにアクセスできる人なら誰でも、Visual Studio をインストールしてその DLL を使用し、DebitAndShare メソッドを呼び出すことができるということです。実際、私たちのアプリはサービス プロバイダーとして機能し、全国の特別なショップでは、ショップの所有者は、アプリで利用可能なサービスを顧客に提供することで支払われ、その金額 (10 ドル) を受け取ります。先ほど述べたセキュリティの問題について、POS 開発者とミーティングを行う予定です。
私は MCTS の本を読み、本のセキュリティ セクションで、銀行の DLL がPublisherIdentityPermission(SecurityAction.InheritanceDemand, CertFile=@"SomeCert.cer")
DebitAndShare メソッドの前に属性を使用し、このメソッドを Protected としてマークすると、1 つのレベルのセキュリティを持つことができることがわかりました。それは正しいですか? また、銀行が暗号化アルゴリズムのアプローチを提供してくれれば、それで十分だと思います。