> For the complete documentation index, see [llms.txt](https://guide.mmdrza.com/guidelines/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://guide.mmdrza.com/guidelines/secp256k2/profile-test.md).

# Profile Test

```python
import os, timeit

setup_code = """
from os import urandom
from secp256k2 import Contactor

cont = Contactor()

def test_Profile_1():
    numd = urandom(32)[0]
    caddr = cont.privatekey_to_address(0, True, numd)
    uaddr = cont.privatekey_to_address(0, False, numd)
"""

# // Total Generated 
num = 10000

time1 = timeit.timeit("test_Profile_1()", setup=setup_code, number=num)


print(f"Generated & Convereted {format(num, ',')} Key To : {time1:.6f} sec")
```

#### Output

```
Generated & Convereted 10,000 Key To : 0.393369 sec
```

Deploy and Running Test From [Google Colab](https://colab.research.google.com/drive/1cYAahMj6n03I3yA5DnDVwbxhDbg9nuwA#scrollTo=qtb00EBtyCUA)

***

### Performance Benchmark

The benchmark measures the efficiency of generating and converting 10,000 cryptographic keys using the **secp256k2** library in Python. The test was run on Google Colab to leverage its computing resources. The setup includes initializing a `Contactor` object for key generation and conversion processes. The `urandom` function generates a 32-byte number for each key to ensure randomness.

#### Test Setup:

* **Library**: secp256k2
* **Function**: Generating and converting cryptographic keys
* **Environment**: Google Colab
* **Iterations**: 10,000 keys

#### Benchmark Code:

The test measures the total time taken to generate and convert 10,000 keys. The snippet below illustrates the setup and execution of the benchmark test:

```python
import os, timeit
setup_code = """
from os import urandom
from secp256k2 import Contactor
cont = Contactor()
def test_Profile_1():
    numd = urandom(32)[0]
    caddr = cont.privatekey_to_address(0, True, numd)
    uaddr = cont.privatekey_to_address(0, False, numd)
"""
num = 10000
time1 = timeit.timeit("test_Profile_1()", setup=setup_code, number=num)
print(f"Generated & Convereted {format(num, ',')} Key To : {time1:.6f} sec")
```

#### Results:

The execution of the benchmark resulted in the following outcome:

```
Generated & Convereted 10,000 Key To : 0.393369 sec
```

#### Conclusion:

The benchmark demonstrates high performance and efficiency in handling cryptographic key generation and conversion on [Google Colab](https://colab.research.google.com/drive/1cYAahMj6n03I3yA5DnDVwbxhDbg9nuwA#scrollTo=qtb00EBtyCUA) using the <mark style="color:orange;">`secp256k2`</mark> library, completing **10,000** operations in approximately 0.393369 seconds. This indicates the library's capability to manage large-scale cryptographic operations within a short <mark style="color:yellow;">`timeframe`</mark>, making it suitable for applications requiring high-security measures and fast performance.
