Я работаю над проектом Point-of-Sale, который предоставляется нашей компании специальным банком .Bank предоставил DLL, которая взаимодействует с POS через USB-порт. Я добавил, что DLL, написанная на языке .NET С#, Поэтому проблем с совместимостью не существует. Существует метод внутри DLL, который называется DebitAndShareTheAmount
. Этот метод имеет два основных параметра P1,P2
.
P1
- это сумма в открытом тексте, а P2
- это сумма, которая должна быть вычтена из P1
снова в открытом тексте. Поэтому, если я звоню DebitAndShare(1000,10);
//, это будет фактически при банковском кредите моя учетная запись с 1000 -10 = 990 $и магазин, используя мое приложение 10 $.
Проблема в том, что любой, кто имеет базовые знания программирования С# и доступа к этому компьютеру SHOP, может установить Visual Studio и использовать эту DLL и вызвать метод DebitAndShare, и вы знаете, что остальное. Фактически наше приложение будет действовать как поставщик услуг и доступны в специальных магазинах по всей стране, владельцы магазина будут оплачиваться путем предоставления услуг в нашем приложении клиентам и их суммы (10 $). Я собираюсь встретиться с разработчиками POS о проблеме безопасности я только что упомянутый.
Я просмотрел книгу MCTS и в разделе безопасности книги, я узнал, что если в DLL банка используется атрибут PublisherIdentityPermission(SecurityAction.InheritanceDemand, [email protected]"SomeCert.cer")
перед методом DebitAndShare и пометить этот метод как Защищенный, то у нас может быть один уровень безопасности, это правильно? каковы ваши предложения. Я также думаю, что если банк может дать нам алгоритм шифрования, тогда этого также будет достаточно.