Giter Site home page Giter Site logo

Input Text File about aes HOT 11 CLOSED

secworks avatar secworks commented on May 31, 2024
Input Text File

from aes.

Comments (11)

secworks avatar secworks commented on May 31, 2024

Hi abifedun!

I will try to help you, but I'm not sure how to parse that question.
Please explain a bit better. What is it that you want to do?

from aes.

abifedun avatar abifedun commented on May 31, 2024

I am currently conducting a simple project where it involves inputting data from the sensor into an AES encryption. I want to know how likely the .dat file can be input into the Verilog code you provided. Thank you.

from aes.

secworks avatar secworks commented on May 31, 2024

Ok, I hope I don't insult you or anything - but have you understood what Verilog is?

The Verilog code is the source files, the description used by tools for FPGA and ASIC implementations to generate a hardware implementation. That is gates, registers, wires and ports. This is not SW code to be executed on a CPU.

If you are going to use this you need to have something (a CPU core, a microconteroller och a finite state machine) that takes your data (not a file, the data itself), divide it into 16 byte blocks and feed the blocks via the connections to the AES engine. For each block you need to pull the next() signal for a clock cycle to trigger processing. Before doing this you need to provide a key (128 or 256 bits) and pull init() for a cycle to trigger a key expansion. For each of these you need to observe the ready() signal to be asserted, signalling that the processing has been completed (for that block etc).

Also, note that this engine is the pure AES (FIPS 197) function. It does not implement a proper block cipher mode such as CBC, CTR, OCB etc. You need to implement the modes on top of the AES engine. This can often be done easily in SW. But they can also be implemented in HW as a wrapper around the core,.

The AES implementation provides two interfaces. aes_core.v provides wide interfaces that allows for high performance operations with the core as part of a design, for example in a HW implementation of modes. aes.v provides a simple, 32-bit interface suitable for low complexity integration with ARM, RISC-V MCUs and CPU cores.

from aes.

secworks avatar secworks commented on May 31, 2024

Please explain, describe the system you have. Are you in fact doing hardware implementations?

from aes.

missaa47 avatar missaa47 commented on May 31, 2024

from aes.

secworks avatar secworks commented on May 31, 2024

Closing this.

from aes.

abifedun avatar abifedun commented on May 31, 2024

If I want to implement a GUI interface where I can input text file in ModelSim. Can you guide me through this?

from aes.

secworks avatar secworks commented on May 31, 2024

Sorry no. There are example testcases in src/tb/tb_aes_core.v or tb_aes.v that shows how to use the AES engine with blocks of data. That should be enough for you to use the core. But the GUI work is not someting I have worked with.

from aes.

abifedun avatar abifedun commented on May 31, 2024

from aes.

abifedun avatar abifedun commented on May 31, 2024

from aes.

secworks avatar secworks commented on May 31, 2024

What file is that? As far as I know, there is no SystemVerilog (.sv) file called aesEnc.sv in the aes repository. I don't use SystemVerilog, and I would never use that name on a file.

As I explained. Look at the testbench in src/tb and write code (or a script) that takes your input and convert to a series of block cipher operations.

from aes.

Related Issues (9)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.