{
  "fetched_at": "2026-10-19T17:30:38Z",
  "source_url": "https://www.kaggle.com/competitions/cryptography/data",
  "pages": [
    {
      "name": "data-description",
      "content": "The task is simply to learn the function y=f(x). Input values x are in a CSV file **hash_train_input.csv** and output values y are in a **hash_train_output.csv**. There is an Id column to match x and y values in separate files although the rows are in order so you can just use x and y that are on the same row of the files.\n\nFor submission, you use file **test.csv** as x values and predict hash values y to a submission CSV file. An example of a submission file is in **sample_submission.csv**. The submission file must have a header row and the columns Id, Bit1, Bit2, Bit3, Bit4, Bit5, Bit6, Bit7, Bit8, Bit9, and Bit10.\n\n## Files\n\n*   **hash_train_input.csv** - the train input (x) dataset (ASCII strings)\n*   **hash_train_output.csv** - the train output (y) dataset (SHA-256 hash values)\n*   **test.csv** - the test input (x) dataset (inputs for submission)\n*   **sample_submission.csv** - a sample submission file in the correct format (y values, predicted SHA-256 hash values)\n\n## Columns\n\n*   `Id` - Id number field of the vector\n*   `Char%d` - %d:th character column of the input x (10 letter ASCII string)  \n*   `Bit%d` - %d:th bit column of the output y (SHA-256 hash first 10 bits)",
      "isPublished": false,
      "hasIsPublished": false,
      "postTitle": "",
      "hasPostTitle": false,
      "mimeType": "",
      "hasMimeType": false
    },
    {
      "name": "Description",
      "content": "This is hard machine learning problem. The task is to predict cryptographic SHA-256  hash output (10 first bits) using machine learning methods and without using detailed  knowledge of SHA-256 function. It is interesting to find out which methods can learn very complex non-linearities.\n\nInput data is 10 dimensional vectors / strings of ASCII values (message) and output is 10 bits of y = SHA-256(message). Mean and standard deviation of SHA-256 bits are 0.50 meaning there are no easy statistics machine learning methods can use.\n\nHave fun!",
      "isPublished": false,
      "hasIsPublished": false,
      "postTitle": "",
      "hasPostTitle": false,
      "mimeType": "",
      "hasMimeType": false
    },
    {
      "name": "Evaluation",
      "content": "10 first bits of SHA-256 values calculated from an testing dataset must stored in CSV formated text file. Each line of ten 0-1 valued data contains a single SHA-256 10 bit hash value.\n\nCompetitors are ranked using mean absolute error of the testing dataset. The earlier submitter is ranked first if there are ties.\n\nPlease don’t calculate correct values using SHA-256 hash function but predict the values using machine learning methods.",
      "isPublished": false,
      "hasIsPublished": false,
      "postTitle": "",
      "hasPostTitle": false,
      "mimeType": "",
      "hasMimeType": false
    },
    {
      "name": "rules",
      "content": "This competition is single persons so there are no teams. Please don't cheat and use SHA-256 function to compute correct values. This will make the competition much more fun for everybody. The idea of this competition is to test capabilities of machine learning methods to very difficult (impossible) non-linear problem (modern cryptography).\n",
      "isPublished": false,
      "hasIsPublished": false,
      "postTitle": "",
      "hasPostTitle": false,
      "mimeType": "",
      "hasMimeType": false
    }
  ]
}