Skip to main content

BinaryAI-SDK is a library provides an abstracted client module to simplify the procedure of uploading file for analysis.

Project description

BinaryAI Python SDK

PUBLISH readthedocs Downloads Gitter

BinaryAI is a binary file security analysis platform. This SDK aims at providing a simple client to upload file and get analysis result. It also works as a demo on calling BinaryAI's GraphQL API directly.

To use SDK, you need a valid credential. Read BinaryAI docs about detailed instructions.

Dependency

Python >= 3.9

Download and install

python3 -m pip install binaryai

Quick start

See the SDK document for guide.

Internals

Endpoints

The default endpoint is https://api.binaryai.cn/v1/endpoint.

API Credentials

API Credentials are used for signing requests. We suggest you using our SDK or our library to sign it, but you can also have your own implementation. We are using the signing method TC3-HMAC-SHA256, same with the Tencent Cloud. You can read their document about how to sign requests. BinaryAI would require following fields:

Region  = "ap-shanghai"
service = "binaryai"
Action  = "BinaryAI"
Version = "2023-04-15"

Additional Reading

Read the Changelog of our product, and hope you can also have fun reading papers related to our job:

  1. Yu, Zeping, et al. "Codecmr: Cross-modal retrieval for function-level binary source code matching." Advances in Neural Information Processing Systems 33 (2020): 3872-3883.
  2. Yu, Zeping, et al. "Order matters: Semantic-aware neural networks for binary code similarity detection." Proceedings of the AAAI conference on artificial intelligence. Vol. 34. No. 01. 2020.
  3. Li, Zongjie, et al. "Unleashing the power of compiler intermediate representation to enhance neural program embeddings." Proceedings of the 44th International Conference on Software Engineering. 2022.
  4. Wong, Wai Kin, et al. "Deceiving Deep Neural Networks-Based Binary Code Matching with Adversarial Programs." 2022 IEEE International Conference on Software Maintenance and Evolution (ICSME). IEEE, 2022.
  5. Wang, Huaijin, et al. "Enhancing DNN-Based Binary Code Function Search With Low-Cost Equivalence Checking." IEEE Transactions on Software Engineering 49.1 (2022): 226-250.
  6. Jia, Ang, et al. "1-to-1 or 1-to-n? Investigating the Effect of Function Inlining on Binary Similarity Analysis." ACM Transactions on Software Engineering and Methodology 32.4 (2023): 1-26.
  7. Wang, Huaijin, et al. "sem2vec: Semantics-aware Assembly Tracelet Embedding." ACM Transactions on Software Engineering and Methodology 32.4 (2023): 1-34.
  8. Jiang, Ling, et al. "Third-Party Library Dependency for Large-Scale SCA in the C/C++ Ecosystem: How Far Are We?." Proceedings of the 32nd ACM SIGSOFT International Symposium on Software Testing and Analysis. 2023.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

binaryai-0.8.2.tar.gz (38.9 kB view details)

Uploaded Source

Built Distribution

binaryai-0.8.2-py3-none-any.whl (51.0 kB view details)

Uploaded Python 3

File details

Details for the file binaryai-0.8.2.tar.gz.

File metadata

  • Download URL: binaryai-0.8.2.tar.gz
  • Upload date:
  • Size: 38.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.6.0 CPython/3.9.19 Linux/6.5.0-1025-azure

File hashes

Hashes for binaryai-0.8.2.tar.gz
Algorithm Hash digest
SHA256 9be04c19a491aee3338167969fa4d983a7bd3813ab2a14059c1e69b727d9614d
MD5 32ae9abe548fb3cbda86b5c97db9ca89
BLAKE2b-256 07a44056b9d037ea2e596c9ea6930cca4f4506f7e9215c079feeeb2e1f18c4a3

See more details on using hashes here.

File details

Details for the file binaryai-0.8.2-py3-none-any.whl.

File metadata

  • Download URL: binaryai-0.8.2-py3-none-any.whl
  • Upload date:
  • Size: 51.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.6.0 CPython/3.9.19 Linux/6.5.0-1025-azure

File hashes

Hashes for binaryai-0.8.2-py3-none-any.whl
Algorithm Hash digest
SHA256 f44102b27f0adccd1683198bd5b96cdf7e549a0b49372f8fcb2e32dc4c0cf0d5
MD5 fccfbbde6f407c376035a43e7de885ec
BLAKE2b-256 7a584565702d7aa26103315d9c213a4a9ab63904fa93434a7486a433afba2422

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page