Verzoek vergrendelen request-locking
Om de kans op het knoeien met verzoeken te verminderen, wordt een eenvoudige sluitingsfaciliteit verstrekt.
Als attribute::RequestLock wordt geplaatst, moet een slotwaarde aan het verzoek, in vorm van &xxxx worden toegevoegd, met xxxx een vier cijferhexwaarde is. Deze hexadecimale waarde wordt geproduceerd gebruikend een eenvoudig die hash algoritme op het wordt toegepast bepalingen gedeelte van het verzoek (na '?' die de weg URL van de bepalingen scheidt). Dit moet worden gedaan nadat het verzoek volledig http-encoded is, maar alvorens het (naar keuze) wordt verduisterd. Na het ontduisteren van het verzoek, gebruikt de server het zelfde het hakken algoritme op het bepalingskoord (met uitzondering van de laatste 5 karakters, die de slotwaarde bevatten). Als de gegenereerde sleutel niet overeenkomt met de vergrendeling, wordt het verzoek afgewezen.
- de Dynamische gebruikersinterface van Media kan niet de correcte details voor het Last Published gebied tonen. Dit heeft echter geen invloed op de uitgeverij.
- Momenteel werkt HLS-videostreaming niet wanneer Request obfuscation en Request locking zijn ingeschakeld.
- Momenteel werken sommige Dynamic Media Viewers niet wanneer Request obfuscation en Request locking zijn ingeschakeld.
C++ steekproefcode om de waarde van de verzoekslot te produceren:
unsigned int lockValue(const char *str)
{
unsigned int sum = 0;
if (str == NULL)
return sum;
for (; *str; ++str)
sum = (sum*131 + *str) & 0xffff;
return sum;
}
Zie ook section-a6d45406c0354669ac581793e4fa8436
Codering van HTTP , Obfuscation van het Verzoek , attributen::RequestLock