是否可以使用用户的视频卡在浏览器中计算sha256哈希值,例如。使用WebGL或Flash?

问题描述 投票:9回答:3

是否可以使用用户的视频卡在浏览器中计算sha256哈希值,例如。使用WebGL或Flash?

我担心这就是要问的问题,但如果需要更详细的说明,请不要犹豫,在评论中告诉我。

谢谢。

javascript flash hash webgl sha256
3个回答
6
投票

这应该是可能的。给定SHA作为片段着色器的实现,您应该能够使用readPixels读回结果:

回读像素[5.13.12]当前帧缓冲区中的像素可以读回ArrayBufferView对象。

void readPixels(int x,int y,long width,long height,enum format,enum type,Object pixels)

格式:RGBA

类型:UNSIGNED_BYTE

来自Kronos WebGL reference card(PDF)

要获得额外的功劳,请在屏幕外的帧缓冲区中完成所有操作,如here所述。


0
投票

下一版本的Flash播放器(11)将支持真正的硬件加速图形,从而暴露了在显卡上运行像素着色器的可能性。它们至少在理论上可用于通用计算。

有一些examples on Thibault Imberts blog


0
投票

看起来可以这样做(虽然在这种情况下它不是SHA256)。以下是使用WebGL2计算客户端哈希值的JavaScript库示例,用于Curl哈希算法:https://github.com/iotaledger/curl.lib.js/

在这种情况下,它用于为IOTA交易(https://www.iota.org/get-started/what-is-iota)进行工作证明。这基本上归结为强制随机输入到相同的散列函数,直到结果匹配某个输出。因此,使用WebGL获得的散列速度非常重要。我用过它,它有效!

© www.soinside.com 2019 - 2024. All rights reserved.