---
tags: hunt
title: Scavenger Hunt 2
description: How does your dApp know where to store a user’s private keys?
image: https://near.org/wp-content/themes/near-19/assets/downloads/near_logo.svg
GA: UA-188414449-3
---
# Scavenger Hunt Challenge `#2`
## How does your dApp know where to store a user's private keys?
This challenge will take you on a tour of `near-api-js` documentation, the best way to connect your JavaScript dApp (client-side or server-side) to the NEAR network. You will have to read through a bit of NEAR's documentation and pay close attention to the differences between client and server side use cases.
Good luck and have fun!
---
**Estimates for Time to Complete**
- Fastest time: **<10 seconds** (if you already know how to do this)
- Most likely time: **5 minutes**
- Time to quit: **10 minutes** (we can help you with some hints in this case)
---
**Expected Response Format**
- **name:** Firstname Lastname
- **email:** you@example.com
- **hunt:** 2
- **answer:** _(here letters represent names for technologies or programming languages)_
- `client-side: keystore 1`
- `server-side: keystore 2`
---
**1. Visit [docs.near.org](https://docs.near.org)**
NEAR Protocol maintains documentation at [docs.near.org](https://docs.near.org). Here you can find details of building on NEAR, becoming a validator, integrating with NEAR and even contributing to the core platform.
**2. Find the JavaScript Developer Introduction**
Clicking on the `Develop` section of the documentation _(hint: see the top nav bar)_ will open a navbar on the left side of the page.
Here you will find. section dedicated to `near-api-js`, NEAR's "JavaScript libary".
The `Introduction` in this section will explain the differences between client and server-side usage of `near-api-js`.
**3. Compare the client and server side implementations**
Read the samples for client and server carefully, taking note of the differences between the lines that mention `keystore`.
The keystore is where private keys are kept by your dApp and this can be one of 3 types: one for the browser, one for the server, and one in memory. There's also a combination keystore that lets you use any combination of these.
**4. Format and submit your response**
To submit your response to this challenge, compose your answer in the following format:
```
client-side: keystore 1
server-side: keystore 2
```
---
You can learn more about keys here: https://docs.near.org/docs/videos/accounts-keys