Questions tagged [sgx]

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
854

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
151

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
352

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
379

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
50

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
52

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
52

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
2

votes
0

answer
166

Views

How to register custom exception in Intel SGX?

I'm having difficulty to get my custom exception handler to work. This is the Enclave code: #include 'Enclave_DivideZero_t.h' #include 'sgx_trts_exception.h' #include 'sgx_trts.h' #include static char buf[200] = 'Handler not called'; int divide_by_zero_handler(sgx_exception_info_t* info) { buf[0] =...
ThunderWiring
3

votes
1

answer
1.2k

Views

calling android_main(struct android_app* state) manually?

I am using powervr sdk to draw 3d models on top of my camera view which is created using the vuforia engine. the entire powervr code is completely native and is called by the android_app_glue. To begin rendering, android_main(struct android_app* state) is called. I want to call this function myself...
Soham Dutta
3

votes
0

answer
263

Views

Crash at glDrawElements on PowerVR SGX530 GPU

I'm writing a game on Android, use OpenGL ES 2.0, native code (Android NDK). At a certain point in my game, it crashes at glDrawElements() function. After debugging, I can make sure that: The mode is GL_TRIANGLES. No VBO (array or element) is used. No problem with index / vertex attribute data (poin...
Nghia Bui
2

votes
1

answer
283

Views

What's the relationship among Enclave , thread and process?

What's the relationship among Enclave , thread and process? Does SGX support multi-thread or multi-process? What will happen if I call the 'fork' to create a new process inside a enclave?
njuyuanrui
2

votes
1

answer
80

Views

Does Intel SGX provide software memory protection in simulation mode?

I have some 4th generation Intel CPU and I want to run some Intel SGX application. I use release simulation mode. Here you can see that SGX simulation doesn't provide HARDWARE protection! However, I would like to know if Intel SGX provides some kind of SOFTWARE protection in release simulation mode?
Roman Zavodskikh
2

votes
1

answer
48

Views

Intel SGX developer licensing and open-source software

Is it possible to obtaining a licensed developer certificate for signing security-reviewed, community-developed open source SGX software binary in production mode, and publish it on open source repository like apt or rpm? I just asked Intel SGX team, they said only verified vendors are able to obtai...
Heting Wang
3

votes
2

answer
2.4k

Views

pvrtextool cl not generating standard header

I'm using the lastest pvrtextoolCL that I downloaded today. The issue is that it's not producing the same header as apple's texturetool or the one in it's online documentation. If I use the legacy save out in the gui tool, it works, but I need the options of the command line tool. Is anyone else ha...
Nico
2

votes
1

answer
228

Views

Determine limit for data sent to VBO?

I'm writing a 3d application for the Playbook, which has a PowerVR SGX 540. I noticed that if I stuff enough data in the VBO through opengl, I can cause the device to crash (not just the application, but the entire device, requiring a hard reboot). To cause the crash, I sent data for a model with ~3...
Prismatic
3

votes
1

answer
98

Views

Side-Channel-Resistant Math Functions for C++

I'm working on an SGX project processing secret data, and at some point, I need to evaluate the natural logarithm of a floating point number. The evaluation process should be side-channel-resistant, meaning its running time and memory access patterns are to be independent of its input and output. Is...
Arya Pourtabatabaie
1

votes
2

answer
128

Views

Transaction resolution using Intel SGX

According to this post from Mike Hearn: https://www.corda.net/2017/06/corda-sgx-privacy-update/ in the transaction resolution process, I understand that in a transaction between a proposer A and party B: Proposer A sends the transaction to Party B Party B needs the transaction chain to validate the...
Maka
4

votes
1

answer
1.1k

Views

How to determine if a texture upload was successful in OpenGL ES 2?

In the good old days of regular OpenGL, it was fairly easy to determine if a texture upload was successful - after calling glTexImage2D you could use glGetTexLevelParameteriv with GL_TEXTURE_WIDTH and GL_TEXTURE_HEIGHT as parameters. GLES, however, doesn't seem to allow this, and as far as I can te...
fluffy
2

votes
1

answer
289

Views

PowerVR - GL_OUT_OF_MEMORY on glDrawElements

I've encountered GL_OUT_OF_MEMORY error after call glDrawElements on PowerVR GPUs. This happens on the following devices: Motorola Atrix 2 with stock 4.0 (PowerVR SGX540) Gigabyte GSmart GS202 with stock 4.x (PowerVR SGX531u) Some LG phone with stock 4.x (also with some PowerVR chip). According to g...
keaukraine
2

votes
0

answer
18

Views

Intel SGX: Creating an attestation report within the enclave

I'm using SCONE Docker image to run my code inside Intel SGX enclave. SCONE handles the creation of enclaves and their eventual destruction, which makes my life as a programmer easier. But if I want to perform a Local or Remote Attestation of my code inside the enclave, I need to rely on SCONE's pro...
Igor

View additional questions