Die Entwickler von V8 haben einen Decompiler fĂŒr WebAssembly vorgestellt.

Die Entwickler der JavaScript-Engine V8 die Dienstprogramm wasm-decompile, die es ermöglicht, die Zwischen-binĂ€re Darstellung WebAssembly in eine lesbare Pseudoprogrammiersprache zu dekodieren, die an JavaScript und C erinnert. Die vorgeschlagene Pseudoprogrammiersprache ist deutlich einfacher zu verstehen und besser fĂŒr die manuelle Analyse geeignet als die textuelle Darstellung von WebAssembly im „.wat“-Format, das nĂ€her an Assembler ist als an Hochsprachen. Dabei spiegelt die Dekompilierung nach Möglichkeit die Wasm-Darstellung vollstĂ€ndig wider.

Dekompilierer ein neuer Display-Engine (DC) fĂŒr AMD APU der Serie HD 7000 (Sea Islands, GCN 1.1) hinzugefĂŒgt. im Werkzeugset WABT, das die Übersetzung zwischen der binĂ€ren und der textuellen Darstellung von WebAssembly ermöglicht, sowie die Analyse, Verarbeitung, Modifikation und ÜberprĂŒfung von wasm-Dateien. Im WABT wird auch das Tool wasm2c, das es ermöglicht, wasm-Dateien in Ă€quivalenten C-Code zu dekodieren, der mit einem C-Compiler kompiliert werden kann, jedoch in Bezug auf Lesbarkeit wenig von der textuellen Darstellung „wat“ unterscheidet.

Zum Beispiel wird eine in wasm kompilierte C-Funktion

typedef struct { float x, y, z; } vec3;

float dot(const vec3 *a, const vec3 *b) {
return a->x * b->x +
a->y * b->y +
a->z * b->z;
}

von der Dienstzelle wasm-decompile in die Pseudoprogrammiersprache

function dot(a:{ a:float, b:float, c:float },
b:{ a:float, b:float, c:float }):float {
return a.a * b.a + a.b * b.b + a.c * b.c
}

wĂ€hrend die Umwandlung in das textuelle Format „.wat“ wie folgt aussieht

(func $dot (type 0) (param i32 i32) (result f32)
(f32.add
(f32.add
(f32.mul
(f32.load
(local.get 0))
(f32.load
(local.get 1)))
(f32.mul
(f32.load offset=4
(local.get 0))
(f32.load offset=4
(local.get 1))))
(f32.mul
(f32.load offset=8
(local.get 0))
(f32.load offset=8
(local.get 1))))))

Quelle: opennet.ru

ZuverlĂ€ssiges Hosting fĂŒr Websites mit DDoS-Schutz kaufen, VPS VDS Server đŸ”„ ZuverlĂ€ssiges Hosting fĂŒr Websites mit DDoS-Schutz kaufen, VPS VDS Server - ProHoster