Questions tagged [sgx]

1

votes
0

answer
226

Views

Client Server Program with Intel SGX

I wanted to design and build a secure remote computation application. I wanted to leverage Intel SGX capabilities and I have thought of 2 approaches but due to lack of development experience, I could not be able to decide which approach I should implement. Scenario: Typical client(assumed secure + N...
Roshan Mehta
1

votes
1

answer
166

Views

Unable to create SGX enclave in hardware mode - “invalid launch token” even though documentation specifies an invalid launch token as the first one

Intel's documentation says here that if there is no previous launch token, an 'invalid' token with all zeros should be used. This works perfectly in simulation mode, but in hardware mode it returns SGX_ERROR_INVALID_LAUNCH_TOKEN, even though that is exactly what it is asking for. // Initialize an 'i...
DonAlonzo
1

votes
1

answer
146

Views

Pass variable-size buffer from SGX enclave to outside

I am trying to do a function with the following prototype: void pass_buffer(void** buffer_out, size_t* buffer_out_len, const void* buffer_in, size_t buffer_in_len); So the idea is to pass a buffer into the enclave, and then return a response in another buffer, which can vary in size, that size being...
Guilherme Borges
1

votes
0

answer
149

Views

Sample CMakeList.txt for Intel SGX

Would someone have an example of CMakeList.txt file to compile a simple 'hello world' Intel SGX application? There are some examples on GitHub (like here) but they are all quite advanced applications. Edit More concretely, could someone help me to translate the following makefile to a CMakeList.txt:...
asonnino
1

votes
0

answer
82

Views

How to use Intel SGX service provider certificate with Ubuntu and Android?

I have already posted this question in the Intel Forums, but my schedule is limited and I need a quick answer, so I am reaching out to all available media. I am developing a small Intel SGX Application that does remote attestation with an Android Service Provider. I need your help trying to underst...
BonusExperiment
1

votes
1

answer
334

Views

PowerVR Android sample: makefile not working

I'm having a hard time setting up PowerVR SDK for Android on Windows 8 64, assuming I met all requirements: Android SDK (fresh Eclipse) Android NDK Cygwin (with make) PowerVR Android SDK 3.0 I can perfectly make and run an Android NDK sample. However, the same process fails for building any PowerVR...
stfn
1

votes
1

answer
348

Views

Calling Native code from android NativeActivity

I am trying to learn how to use powervr insider sdk. As soon as I open my MainActivity.java file it's extending NativeActivity and it calls it using super.onCreate(). Here is the code: package com.powervr.OGLES2IntroducingPOD; import android.app.NativeActivity; import android.os.Bundle; import andr...
Shaji Thorn Blue
1

votes
1

answer
1.1k

Views

eglSwapBuffer on SGX 530 is slow

We have an embedded system that uses TI 8168 based h/w. This SOC has SGX 530 as its GPU. We are running Android 4.0.3 on this platform. We found the frame rate of Android apps seem to be low compared to same app running on similarly powered tablet. After timing various functions in Android activity,...
videoguy
1

votes
1

answer
113

Views

Device driver inside Intel SGX enclosure?

Is it possible to run a device driver inside an Intel SGX enclave? Or is it impossible for an enclave to access DMA memory and perform memory-mapped I/O? I already have a device driver that has mapped all of the necessary memory but I don't know if it will be possible to create an enclave that share...
Luke Gorrie
1

votes
1

answer
328

Views

Enabling Intel SGX in BIOS

I want to test Intel SGX technology on my Lenovo Tower S510 10L3-000JFM. I checked via https://github.com/ayeks/SGX-hardware that my CPU Intel Core i7-6700 supports SGX but BIOS does not, or may be not enabled (in BIOS). A BIOS update can fix this. However, a recent BIOS update from Lenovo in https:...
Oualid
1

votes
1

answer
0

Views

How does Intel SGX remote attestation works?

SGX remote attestation procedure (variations: with and without the participation of the remote Intel service, the explanation / logic of the work is step by step.
zenbooster
0

votes
0

answer
0

Views

Call an intel sgx enclave application from python.(wrap the enclave application using python)

What kind of Python wrapper will be suitable to wrap the enclave code in intel sgx and how to use it? I have tried using ctypes and pybind11 app.cpp: int makeAcallHere() { sgx_enclave_id_t eid; sgx_status_t ret = SGX_SUCCESS; sgx_launch_token_t token = { 0 }; int updated = 0; // Create the Enclave w...
Balaganapathy k
1

votes
1

answer
139

Views

PowerVR-SGX500 series strange behavior

When testing on a Galaxy Tab 3 with a PowerVR-SGX GPU, our animated 3D models appeared to explode, smearing polygons all over the screen. Other devices without the PowerVR GPU did not exhibit this behavior with the same APK. Is anyone else seeing this problem? Is there anything I am missing?
Grimless
2

votes
0

answer
29

Views

How to force gRPC cpp program using single thread only

I need to run my client application (written in c++ with gRPC) in an operating system (which only support single thread). However, I noticed that grpc::InsecureChannelCredentials(); is trying to create multiple threads. Here is the output from debugger after calling that gRPC function in my host mac...
J.Z
1

votes
1

answer
868

Views

Intel SGX remote attestation sample code

I'm trying to run the remote attestation sample code in the Intel SGX SDK. I always get error 'Error, call sgx_ra_get_msg1 fail [wmain].' I think it's because that the sgx_ra_init(&g_sp_pub_key, b_pse, p_context) function returns a zero value p_context, which can't be used. Is there anyone can run t...
WooShin
1

votes
2

answer
156

Views

Determine SGX enclaves running on same system

I have two applications A1 and A2, both creating there own enclave E1 and E2. A third application A3 is connected to A1 and A2. Is it possible for A3 to determine if the two enclaves E1 and E2 are actually running on the same system?
wasp256
1

votes
1

answer
356

Views

C++ Arguments to SGX Enclave Edge Functions

I'm trying to write a simple SGX enclave that takes in a vector of booleans, but apparently edger8r creates c code; so the edl code enclave{ from 'sgx_tstdc.edl' import *; include 'BetaDist.h' include trusted { BetaDist Estimate(std::vector X, double max_z, double max_delta); }; untrusted { }; };...
Arya Pourtabatabaie
1

votes
1

answer
384

Views

Passing vector to enclave in Intel SGX

I have a vector a; How could I pass it to the enclave? How I declare edl function. A sample function declaration for the app, edl and enclave is much appreciated. I am aware of this: C++ Arguments to SGX Enclave Edge Functions. A sample to pass even a vector is ok for me. update1: I came up with thi...
Roshan Mehta
1

votes
1

answer
51

Views

g++ - linking stage (-L flag) not working

I am new to C++ and am trying to figure out where in the compiling process my error is. Apologies, if this question is unclear, I'm not sure what information to provide. Reference information: The directory 'mbedtls/lib/' contains two .a (archive) files, 'libmbedtls_SGX_t.a' and 'libmbedtls_SGX_u.a'...
Roymunson
1

votes
1

answer
68

Views

libsgx_capable.so: cannot open shared object file: No such file or directory

I am trying to run the following code in order to enable SGX in my machine (BIOS: software controlled): //enable_device.c #include 'stdio.h' #include 'sgx_capable.h' #include 'sgx_eid.h' #include 'sgx_urts.h' #include 'sgx_error.h' int main(void) { sgx_device_status_t sgx_device_status; sgx_status_t...
Dalton Cézane
1

votes
0

answer
274

Views

How to install Intel SGX platform software?

I have tried to install the platform software (PSW) many times on my Windows machine and failed. I have tried to install it on the following OS version (all 64 bits) Windows 10 Pro build 1803 Windows 10 Pro build 1809 Windows 10 Home build 1809 Windows 10 Home build 1803 According to the release no...
xtt
1

votes
1

answer
191

Views

Intel SGX development on older generation of Intel processor

Is it possible to do Intel SGX development on the older generation of Intel processor that does not have SGX support with some simulation environment? I tried to install SGX SDK which installed correctly but could not able to install SGX PSW as supporting Intel SGX processor is a hard requirement fo...
Roshan Mehta
5

votes
2

answer
816

Views

Intel SGX Threading and vs TCS

I'm trying to understand the difference between SGX threads enabled by TCS and untrusted threading provided by SDK. If I understand correctly, TCS enables multiple logical processors to enter the same enclave. Each logical processor will have its own TCS and hence its own entry point (the OENTRY fie...
qweruiop
2

votes
2

answer
3.5k

Views

What exactly constitutes swizzling in OpenGL ES 2.0? (PowerVR SGX specifically.)

PowerVR says Swizzling the components of lowp vectors is expensive and should be avoided. What exactly is swizzling? color.brg // This fits the definition I'm familiar with. But what about vec3(color.b, color.r, color.g), or vec3(color), when color is a vec4? Does accessing or modifying a singl...
Jessy
6

votes
1

answer
343

Views

SGX Quote attestation with IAS

I was able to use run SGX in hardware mode and retrieve the SigRL successfully from IAS. But I'm struggling when trying to perform the Quote attestation using their REST API. I used the REST API interface description here. I connected successfully to the server with the HTTP POST request https://tes...
wasp256
2

votes
1

answer
935

Views

Using PVRTexTool to build texture data on PC for use on iOS OpenGL ES

Apple provides the texturetool tool to cook textures into the PowerVR compressed texture format. My toolchain runs on Windows so I would like to create this texture data on a Windows PC. It looks like this will be simple because Imagination provides a tool and SDK that runs on windows. So I've downl...
Namaste
2

votes
3

answer
1.7k

Views

OpenGL ES problem with PowerVR SGX GPU

I have an OpenGL Live wallpaper that works fine on all phones except those with the PowerVR SGX series. This includes almost all Samsung phones and the Motorola Droid series. The wallpaper is nothing but a black screen on the PowerVR GPU phones. I have been racking my brain for a week trying to figu...
Keith Whitt
2

votes
1

answer
1.3k

Views

PowerVR SGX540 Android texture issue

I am trying to load some textures in my android application. It works well on all the devices like samsung galaxy ace, s2 but any device using PowerVR SGX540 gpu, e.g. samsung galaxy S-gti9000 will have some weird artifacts.... Some textures are loaded correctly... but other textures are completel...
revolutionary
1

votes
2

answer
612

Views

Load an application into Intel SGX enclave

Is there a way to load an existing application into an Intel SGX enclave directly?
Jinwen Wang
1

votes
1

answer
1.5k

Views

What's the advantages and disadvantages of PowerVR?

My game engine recently added PowerVR (PVR) support, after some search on Google and Wikipedia, I only know the definition of PVR, but I don't know what is it use for, what are its advantages and disadvantages. I'm developing game for Android, what should I use, PNG or PVR?
Luke Vo
2

votes
1

answer
550

Views

How to add a device to all docker containers

To make use of SGX enclaves applications have to talk to the SGX driver which is exposed via /dev/isgx on the host. We execute such applications inside of Docker containers mapping /dev/isgx inside with the --device command line option. Is there an option to add a device (/dev/isgx in this case) to...
fzgregor
3

votes
2

answer
1.1k

Views

how do I make an objective-c delegate for a cpp class?

I'm stuck trying to combine openGL-es (xcode openGL game template with the ogles2tools library from powervr 3.0 sdk. My problem is the line of code where I load the effect file: /* Load the effect. We pass 'this' as an argument as we wish to receive callbacks as the PFX is loaded. This is optional...
Valerie
2

votes
3

answer
1.2k

Views

Intel SGX in virtualized environment

Is it possible to create and run Intel SGX enclaves within a virtualised environment such as Virtualbox or Docker?
wasp256
1

votes
1

answer
59

Views

Best way to convert 2D vector to C type (for SGX enclave)

I'm trying to write an SGX enclave that takes in a 2D vector of int (representing a grayscale image), but edger8r accepts only C types. I am aware of this and this, but could someone provide an example on how to transform a type like: vector< vector > ImagePixels; into a C type so that I can pass i...
asonnino
3

votes
0

answer
454

Views

Android OpenGL ES Issue only with a specific GPU without any Error in LogCat

I have accurately tested my app before release it, on Emulator set with different screen size (and with different Android SDK and CPU emulations), and many real devices. No problems, everything works fine. Now an user has reported a bug with his tablet. I'm testing the app on tons of devices and th...
AndreaF
5

votes
4

answer
4.1k

Views

is it possible to read data from vertex shader?

I am trying to write a simple GPGPU benchmark. To load the data into vertex buffer array, do some computation in the vertex shader, and read the data back. Is it possible? I am planning to run this on SGX GPUs. Is there any way to do that? I dont want it to go through the transformation, clipping, T...
sai pallavi
3

votes
3

answer
982

Views

Linux SGX enclave with OpenSSL

I saw on the Intel website here that there is an OpenSSL library available for SGX but only on Windows. Does anyone know if there is also such an extension for Linux SGX SDK?
wasp256
2

votes
2

answer
200

Views

Why in SGX enclave string argument has to be used with [in] attribute

Using OCALL, I want to get a copy of C string that is dynamically created in untrusted memory into my enclave. Thus, I have to use [out, string] attribute. However, I cannot do that because I have to add [in] attribute as well. The problem is that I really don't know the size of string and I don't...
yerzhan7
2

votes
2

answer
159

Views

SGX - What is the difference between trusted bridge and trusted proxy?

In Intel's SGX developer guide Pointer Handling, it mentions: When a buffer is being copied, the trusted bridge must avoid overwriting enclave memory in an ECALL and the trusted proxy must avoid leaking secrets in an OCALL. What are the trusted bridge and trusted proxy here? --- edited--- From Point...
xtt
2

votes
2

answer
306

Views

can we run Linux commands inside sgx-enclave?

Can we write code inside sgx enclave which executes Linux commands like below: cryptsetup ln I want add some encryption code inside sgx enclave. How to do file IO inside enclave.
Rajendra

View additional questions