2017-01-04 4 views
2

В руководстве для разработчиков SGX от Intel Pointer Handling, он упоминает:SGX - В чем разница между доверенным мостом и доверенным прокси?

Когда буфер копируется, доверенный мост должен избежать перезаписей анклав памяти в ECALL и доверенный прокси должен избежать утечек секретов в OCALL.

Какие доверенного мост и доверенных прокси здесь?

--- отредактирован ---

От Pointer Handling in ECALL и Pointer Handling in OCALL, я заметил, что доверенный мост используется для выделения и копирования элементов буфер от внешнего анклава внутри анклава, где доверенных прокси используется для , выделяющих и копирование буфер изнутри анклава во внешний анклав. Поэтому мой личный вывод заключается в том, что оба они являются своего рода делегатом, ответственным за , выделяя и копирование буферов памяти из двух разных направлений. Их имена «мост» и «прокси» используются для дифференциации их рабочего процесса.

Правильно ли я понимаю?

ответ

1

Доверенный мост и доверенные интерфейсы прокси-сервера между приложением и анклавом. Эти интерфейсы кода в/из анклава. Edger Tool (входит в среду сборки), который анализирует файл EDL и генерирует доверенный мост и доверенные файлы прокси (файлы .c и .h).

Trusted мост:

Для ECALLs доверенной задача моста для того, чтобы структура сортировочной не перекрывается анклав памяти.

[in]: Когда указатель на ненадежную память с атрибутом в передается в анклав, доверенный мост выделяет память внутри анклава и копирует память, на которую указывает указатель извне, в анклавную память.

[out]: Когда указатель на ненадежную память с атрибутом out передается в анклав, доверенный мост выделяет буфер в доверенной памяти, обнуляет содержимое буфера для удаления любых предыдущих секретов и передает указатель на этот буфер к доверенной функции. После возврата доверенной функции доверенный мост копирует содержимое доверенного буфера в ненадежную память.

доверенный прокси

Для OCALLs, доверенный прокси выделяет память на внешней стороне стеки передать структуру сортировочной и проверяет, что параметры указателя с их полным спектром находятся в пределах анклава.

[in]: Когда указатель на доверенную память с атрибутом в передается из анклава (OCALL), доверенный прокси выделяет память вне анклава и копирует память, указанную указателем изнутри анклава, в ненадежную память ,

[out]: Когда указатель на доверенную память с атрибутом out передается из анклава (OCALL), доверенный прокси распределяет буфер в ненадежном стеке и передает указатель на этот буфер на ненадежную функцию , После того, как функция не доверяет, доверенный прокси копирует содержимое ненадежного буфера в доверенную память.

 Смежные вопросы

  • Нет связанных вопросов^_^