Si su presupuesto es inferior a 10-20 mil dólares (o, de manera más realista, 100K +), no tiene ninguna esperanza de obtener un ASIC.
El dispositivo común utilizado en lugar de un ASIC, en situaciones en las que no puede pagar el NRE (gastos no retornables, básicamente el costo de producir las máscaras para grabar su ácido aséptico, así como los costos de diseño), es utilizar un FPGA .
Hay una lista de documentos relacionados con el uso de FPGA para el craqueo de hash here .
Mucho depende de lo que quiere decir cuando dice que su presupuesto es "limitado". Los grandes FPGA pueden ser de varios cientos de dólares por pieza, ¡y eso es solo para el IC (circuito integrado)! La gran mayoría de los crackers de hash basados en FPGA que han sido creados por amateurs se realizan mediante ingeniería inversa de productos existentes de e-bay que utilizan FPGA, que suelen ser dispositivos de procesamiento / codificación de video en tiempo real.
Realmente, si te tomas en serio este proyecto, deberías pasar un tiempo investigando y entendiendo HDLs . Los FPGA (así como los ASIC) no están "programados" en C, ni en ningún otro idioma común con el que se pueda familiarizar. En su lugar, utilizan un lenguaje (denominado 'Lenguaje de descripción de hardware ") que describe una serie de operaciones y registros lógicos, que funcionan en paralelo. Es bastante diferente a C.
Luego, debe comprar una placa de desarrollo de FPGA barata ( digilent hace algunas buenas) y hacer que su algoritmo de hashing funcione y se ajuste. . Entonces podrías mirar la ampliación de escala.
Vale la pena señalar que ninguno de esto ejecutaría Linux en absoluto. Todo lo que hacen los ASIC (así como los FPGA) se denomina "simple", la forma en que funciona un ASIC / FPGA es fundamentalmente diferente a la de un microcontrolador, y no existe un "sistema operativo" de FPGA. La medida en la que Linux (o cualquier sistema operativo) esté involucrado es simplemente la comunicación con el hardware de propósito especial y la alimentación del hash / la lectura de los hits de hashing. Probablemente esto ocurra a través de USB, o si está utilizando una plataforma como la Zynq, a través de la memoria compartida.
Es interesante que mencione a la gente de la parallela, ya que es un buen ejemplo de los costos involucrados en hacer un ASIC bastante complejo. Necesitaban unos ~ $ 750,000 para que su diseño fuera producido como hardware.