
Tidal App
Tidal is a high quality music streaming service offering its users access to millions of tracks and video clips in HiFi and Hi-Res formats. Proxy verification for Tidal is aimed at confirming the proxy's ability to bypass geographical restrictions, provide stable access to the service's API and prevent detection of automated traffic. This is especially important to ensure reliable use of Tidal without risk of blocking or speed limitation.
Verification Algorithm
The proxy verification algorithm for Tidal includes the following steps:
Customizing Headers:
Defining the required HTTP headers, including client keys for different platforms (e.g. Android, iOS).
Obtaining the Country Code:
Sending a GET request to a dedicated Tidal endpoint to determine the current country code via proxy.
Analyzing the response to extract country information.
Retrieving the Composition List:
Using the retrieved country code, sending a GET request to the endpoint to retrieve the list of songs on the homepage.
Analyzing the response to extract the API URL needed to retrieve the specific song information.
Retrieving the Composition Information:
Sending a GET request to the retrieved URL to retrieve detailed song information.
Checking if the response is correct and if the required data is available.
Generating the Client's Unique Key:
Generating a unique client key (
client_unique_key) for further authentication.Use UUID to ensure uniqueness.
Preparing Authorization Parameters:
Create a
payload(payload) with the necessary parameters for authorization, including:appMode: application mode (e.g.,android).language: language (e.g.en).restrict_signup: restrict registration (e.g.,true).client_id: client identifier from platform keys.client_unique_key: the generated unique client key.redirect_uri: the redirect URI after authorization.response_type: response type (e.g.code).
Generating
code_verifierandcode_challenge:Generating
code_verifierusing random datCalculating
code_challengeusing SHA256 hashing ofcode_verifier.Adding these parameters to the payload to support PKCE (Proof Key for Code Exchange).
Sending an Authorization Request:
Sending a GET request to the Tidal authorization endpoint with prepared parameters and headers.
Checks if the response is correct and if the
urlfield is present, indicating that the authorization process has been successfully initiated.
Return Verification Result:
If all the previous steps are completed successfully and the required data is received, the proxy is considered valid (
True).Otherwise, the proxy is considered invalid (
False).
Features of the Algorithm
Multi-stage Verification:
The algorithm includes multiple stages of interaction with Tidal's API, which provides more accurate verification of proxies for compatibility with the service.
Use of Client Keys:
The use of client keys and secrets for different platforms (Android, iOS and others) allows simulating requests from real devices and bypassing possible limitations.
Generating
code_verifierandcode_challenge:Using PKCE for secure authorization without the need to transmit secret data.
Handling Geographic Restrictions:
Obtaining a country code and using it in requests allows you to check if the proxy is correctly transmitting geographic information and can bypass regional restrictions.
Generating Headlines:
Using the fake_useragent module to dynamically generate HTTP headers that mimic a real user and prevent automated requests from being detected.
Last updated