2017-01-19 13 views
2

Предположим, что существует развернутый общедоступный веб-сайт/веб-сервис. Они говорят, что это экземпляр открытой исходной кодовой базы. Могут ли они доказать это мне?Можно ли доказать, что веб-сайт/служба использует определенную базу данных с открытым исходным кодом?

Например, возьмите полезный www.s3auth.com, шлюз HTTP auth для S3, который позволяет защитить паролем статические сайты, размещенные на S3 (благодаря @yegor256). Егор любезно с открытым исходным кодом услуги утолить конфиденциальности:

Я сделал это программное обеспечение с открытым исходным кодом в основном, чтобы гарантировать своим пользователям, что сервер не хранит свои личные данные в любом месте, а действует только как введя пароль через обслуживание. В результате программное обеспечение находится на GitHub.

Может ли он каким-то образом доказать пользователям, что www.s3auth.com использует точную кодовую базу в Github?

ответ

0

Короткий ответ

В общем случае: Нет, без полного и внешнего аудита программного обеспечения, аппаратного обеспечения и сетевой инфраструктуры в течение определенного периода времени

Объяснение

Убедитесь, что программное обеспечение соответствует спецификации, это вовсе не тривиальная задача. Обратите внимание, что даже требование фактически использует точную кодовую на Github не ясно:

- Includes any part of the repository 
- Includes a full tag 
- Includes a full tag at a point of time 
- Includes a full tag at a point of time and uses some functionality 
- Includes a full tag at a point in time and uses a significant part of the functionality 
- Includes a full tag at a point in time, uses a significant portion of the functionality, and there is no additional function that substantially modifies the behavior 
- Includes a full tag at a point of time, uses a significant part of the functionality, and there is no additional function 
- etc 

Аудитор должен проверить:

  • код до того, чтобы требование acomplished
  • Билд чтобы убедиться, что конечный результат является ожидаемым и не включает или не удаляет детали.
  • Аппаратная инфраструктура для обеспечения развертывания программного обеспечения, а не измененная используемая как
  • Сеть infraestructure для проверки развернутой версии действительно то же самое, что пользователи получают

Любые изменения в коде или infraestructure аннулирует аудит результатов

Аудитор должен быть внешним, чтобы обеспечить независимость и, в свою очередь, должен быть проверен регулирующим органом, который удостоверяет, что он способен выполнить этот процесс.

Я думаю, что я бьюсь вокруг куста. . Я хочу проиллюстрировать, что утверждать, что программное обеспечение соответствует спецификации, сложно, дорого, а иногда и не полезно. Конечно, этот процесс не нужен, если обе стороны согласны на что-то более простое.

Этот вид аудита существует в реальном мире, особенно в мире безопасности. Например, FIPS 140 или Оценка общих критериев подтверждает, что модули безопасности оборудования или даже пакеты программного обеспечения соответствуют некоторым требованиям безопасности. Я также знаю некоторых доверенных сертификаторов, которые доказывают, что сайт показывает конкретный контент в определенный момент времени (обычно применяется к электронному правительству)