Web應(yīng)用程序中各種不同的編碼方案

2022-05-28    分類: 網(wǎng)站建設(shè)

早期,HTTP協(xié)議和HTML語言都是基于文本的,與是眉山網(wǎng)頁設(shè)計出不同的編碼方案,確保這些機制能夠安全處理不常見的字符和二進制數(shù)據(jù)。許多情況下,攻擊者甚至能夠控制應(yīng)用程序所有使用的編程方案,造成其重慶網(wǎng)站制作人員無法預(yù)料的事。攻擊Web程序通常需要相關(guān)數(shù)據(jù)進行編碼,Web應(yīng)用程序?qū)ζ鋽?shù)據(jù)采用幾種不同的編碼方案。                                                                                                                          

URL編碼,只允許使用US-ASCⅡ字符集中的客打印字符。而且由于其在URL方案或HTTP協(xié)議內(nèi)具有特殊含義,這個范圍內(nèi)的一些字符也不能用在URL中。URL編程主要用于對擴展ASCⅡ字符集中的任何有問題的字符進行編碼,使用其通過HTTP安全傳輸。任何URL編程的字符都以%為前綴,其后是這個字符的兩位是十六進制ASCⅡ代碼,當(dāng)然也包括象 =,&;,和 % 這些特殊的字符。其實url編碼就是一個字符ascii碼的十六進制。不過稍微有些變動,需要在前面加上“%”。比如“\”,它的ascii碼是92,92的十六進制是5c,所以“\”的url編碼就是%5c。那么漢字的url編碼呢?很簡單,看例子:“胡”的ascii碼是-17670,十六進制是BAFA,url編碼是“%BA%FA”。              

Unicode編碼,是一種支持全世界各種編寫系統(tǒng)而設(shè)計的字符編碼標(biāo)準(zhǔn),它采用各種編碼方案騎著一下可用于表示W(wǎng)eb應(yīng)用程序中的不常見的字符。Unicode也稱“統(tǒng)一碼”“萬國碼”。16位Unicode編碼的工作原理與URL類似。為通過HTTP進行傳輸,16位Unicode編碼的字符以%u為前綴,其后是這個字符的十六進制Unicode碼點。比如:%u2215代表/; %u00e9代表é。                                                                                   

Base64編碼,是用一個可打印的ASCⅡ字符就可以安全轉(zhuǎn)換任何二進制數(shù)據(jù),它常用于對電子郵件附件進行的編碼,其通過SMTP安全傳輸。Base64是網(wǎng)絡(luò)上最常見的用于傳輸8Bit字節(jié)代碼的編碼方式之一。Base64是網(wǎng)絡(luò)上最常見的用于傳輸8Bit字節(jié)代碼的編碼方式之一標(biāo)準(zhǔn)的Base64并不適合直接放在URL里傳輸,因為URL編碼器會把標(biāo)準(zhǔn)Base64中的“/”和“+”字符變?yōu)樾稳纭?XX”的形式,而這些“%”號在存入數(shù)據(jù)庫時還需要再進行轉(zhuǎn)換,因為ANSI SQL中已將“%”號用作通配符。            

HTML編碼,是一種用于表示問題字符以其安全并入HTML文檔的方案。有許多字符具有特殊的含義,為了安全使用這些字符將其用在文檔內(nèi)容中,就必須對其進行HTML編碼。HTML編碼定義了字符HTML實體來表示特殊字面字符,比如:"代表“;'代表’;&代表&;<代表<;>代表>。                            

十六進制編碼,是許多應(yīng)用程序在傳送二進制數(shù)據(jù)時直接使用十六進制編碼,用ASCⅡ字符表示十六進制數(shù)據(jù)塊。比如對cookie中的用戶daf進行十六進制編程,會得到這樣的結(jié)果:646166  和Base64編碼的數(shù)據(jù)一樣,在十六進制編碼數(shù)據(jù)通常容易辨認。

當(dāng)前名稱:Web應(yīng)用程序中各種不同的編碼方案
網(wǎng)站鏈接:http://www.bm7419.com/news18/160018.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供關(guān)鍵詞優(yōu)化、移動網(wǎng)站建設(shè)、網(wǎng)站策劃、外貿(mào)建站、面包屑導(dǎo)航、微信小程序

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

綿陽服務(wù)器托管