---
# System prepended metadata

title: SECP256k2
tags: [private key, python package, wallet, cryptography, secp256k1, public key, python library, secp256k2, crypto, python]

---


# SECP256k2: A Modern Library for Elliptic Curve Cryptography

![SECP256k2: A Modern Library for Elliptic Curve Cryptography](https://hackmd.io/_uploads/B1LuZJeGT.png 'SECP256k2: A Modern Library for Elliptic Curve Cryptography')


## Introduction

:::info 
:bulb: **SECP256k2** is a high-performance and easy-to-use library for working with the SECP256k1 elliptic curve. This library is meticulously designed to provide a robust set of functionalities needed for the development of secure, fast, and efficient cryptographic applications.
:::

## Features

- **Optimized Performance:** Leveraging optimized algorithms and efficient code structures for high-speed operations on the SECP256k1 curve.
- **Comprehensive Toolset:** Offering a wide array of functionalities ranging from basic arithmetic operations to advanced cryptographic protocols.
- **Cross-Platform:** Written in `C` and `Python`, **SECP256k2** is designed to be used on multiple operating systems including Windows and Linux.

## Getting Started

### Installation

#### windows with `pip`
```bash
pip install secp256k2
```

#### linux and Mac with `pip3`
```bash
pip3 install secp256k2
```

### Usage

A quick example to get you started with SECP256k2:

```python
from secp256k2 import Contactor

cont = Contactor()

dec = 0x00000000000000000000000000000000000000000000001

wif_compress = cont.Decimal_To_Wif(dec, True)

wif_uncompress = cont.Decimal_To_Wif(dec, False)

```
---

compressed and uncompressed bitcoin address wallet from decimal (integer).

```python
from secp256k2 import Contactor
# added Contactor class to project script
co = Contactor()
# dec
dec = 0xffffffffffffffffffffff880000000000000
compress_address = co.Decimal_To_Addr(dec, addr_type=0, compress=True)
uncompress_address = co.Decimal_To_Addr(dec, addr_type=0, compress=False)
```
---

Convert Decimal (Number) To Ethereum Address (Maximum Range: `115792089237316195423570985008687907852837564279074904382605163141518161494337`):

```python
from secp256k2 import Contactor

cont = Contactor()

dec_num = 1 # example , can use any range number to 
# ethereum address generated from decimal number 
eth_address = cont.Decimal_To_ETH_Addr(dec_num)
```
---
convert and Generated Wif Key from decimal Number:
```python
from secp256k2 import Contactor

co = Contactor()

dec = 0xffffffffffffffffffffffffff8999999999333666666
wif_compress = co.Decimal_To_Wif(dec, True)
wif_uncompress = co.Decimal_To_Wif(dec, False)
```
---
Decimal to RIPEMD160

```python
from secp256k2 import Contactor

co = Contactor()

dec = 0xfffffffffffffffffff99999999999

ripemd160 = co.Decimal_To_RIPEMD160(dec)
```
---
convert wif key to private key (hex):

```python
from secp256k2 import Contactor

co = Contactor()

WIF = "WIF_KEY_HERE"

privatekey = co.Wif_To_Hex(WIF)
```

## Documentation
::: success 
For more detailed information and advanced usage, please refer to the [full documentation](https://secp256k2.github.io/secp256k2).
:::

## Contribution

We welcome contributions from the open-source community. If you find any issues or would like to propose enhancements, please feel free to open an issue or submit a pull request.

## License

SECP256k2 is licensed under MIT. For more information, please see the [LICENSE](/LICENSE) file.

---

### Donate:

Bitcoin:`1MMDRZA12xdBLD1P5AfEfvEMErp588vmF9`


Programmer And Owner : [PyMmdrza](https://github.com/Pymmdrza)

official website : <a title="official website programmer" href="https://mmdrza.com/" rel="follow">MMDRZA.COM</a>