首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

XSS学习笔记【二】

URL编码 URL编码最常见的是在用GET/POST传输时,顺序是把字符改成%+ASCII两位十六进制(先把字符串转成ASCII编码,然后再转成十六进制)。...他的命名实体:构造是&加上希腊字母,字符编码:构造是&#加十进制、十六进制ASCII码或unicode字符编码,而且浏览器解析的时候会先把html编码解析再进行渲染。...Ascii编码 这种方式主要利用了js的eval()函数和String.fromCharCode()函数。...eval()函数是一个神奇的函数,可以用来计算一个字符串,将字符串变为js的表达式或者可执行语句,String.fromCharCode()函数则是将一段Ascii码转化为字符串。...针对限制 既然限制了数据长度,那我们可以从外部引用一个自己写的js,而不是直接全部写在请求当中。

1.5K00

【蓝桥杯备赛系列 | 简单题】十六进制转八进制、十六进制转十进制、十进制转十六进制 (手撕)

可以发现这个报错出现在函数parseInt(String s, int radix)中,调试一番,源码原理是提取十六进制中字符串每个字符单独转换为十进制,result变量初始化为0,依次减去转换得到的十进制...这里尝试使用 BigInteger 进行实现,其中通过构造函数,构造对应的进制数,接着调用toString转换输出 过啦!!!!!!!!!!!!...为了刷题的本心,我们对应题目所需要求(进制转换 字符 循环),按照字符串来做(我觉得实现结果和BigInteger的构造函数可以参考) 1.2 字符串 算法实现 首先我们先观察十六进制和八进制、二进制。...以下是一个简单的示例代码,它演示了如何将字符类型的数字转换为整数类型: char c = '5'; int num = c - '0'; System.out.println(num); // 输出结果为...8位的正的十六进制数字符串,将它转换为正的十进制数后输出。

2.6K40
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    Base64笔记

    它主要用于ACSII文本中夹杂少量非ASCII码字符的情况,不适合于转换纯二进制文件。 它规定将每一个8位的字节,转换为3个字符。 第一个字符是"="号,这是固定不变的。...举例来说,ASCII码中"换页键"(form feed)是12,二进制形式是00001100,写成十六进制就是0C,因此它的编码值为"=0C"。"...="号的ASCII值是61,二进制形式是00111101,因为它的编码值是"=3D"。除了可打印的ASCII码以外,所有其他字符都必须用这种方式进行转换。...所有可打印的ASCII码字符(十进制值从33到126)都保持原样不变,"="(十进制值61)除外。 3. 下面,详细介绍Base64的编码转换方式。...在PHP语言中,有一对专门的函数用于Base64转换:base64_encode()用于编码、base64_decode()用于解码。

    87440

    【Base64笔记】「建议收藏」

    它主要用于ACSII文本中夹杂少量非ASCII码字符的情况,不适合于转换纯二进制文件。 它规定将每一个8位的字节,转换为3个字符。 第一个字符是”=”号,这是固定不变的。...举例来说,ASCII码中”换页键”(form feed)是12,二进制形式是00001100,写成十六进制就是0C,因此它的编码值为”=0C”。”...=”号的ASCII值是61,二进制形式是00111101,因为它的编码值是”=3D”。除了可打印的ASCII码以外,所有其他字符都必须用这种方式进行转换。...所有可打印的ASCII码字符(十进制值从33到126)都保持原样不变,”=”(十进制值61)除外。 3. 下面,详细介绍Base64的编码转换方式。...在PHP语言中,有一对专门的函数用于Base64转换:base64_encode()用于编码、base64_decode()用于解码。

    47840

    【Golang】深究字符串——从byte rune string到Unicode与UTF-8

    []byte使用,要详细说清楚rune、byte、字符串之间的关系,必须得从人和宇宙的关系说起,呸!...是必须得从字符编码说起。 1. ASCII码 通过数字电路的知识,我们知道使用二进制对信息进行编码与度量。...rune切片 []byte()将字符串转换为byte切片 由于都是Ascii码字符串,所以输出的整数都一致 包含非ascii码的字符串 package main import ( "fmt" "unicode...超出这个范围,go在转换的时候,就会把多出来数据砍掉;但是rune转byte,又有些不同:会先把rune从UTF-8转换为Unicode,由于Unicode依然超出了byte表示范围,所以取低8位,其余的全部扔掉...Unicode字符 每个Unicode字符,在内存中是以utf-8的形式存储 Unicode字符,输出[]rune,会把每个UTF-8转换为Unicode后再输出 []byte()可以把字符串转换为一个

    2.6K10

    大小写字母、数字的ASCII码值,及字母数字的转换

    大写字母/小写字母及数字的ASCII码(数字)值对照: a-z:97-122 A-Z:65-90 0-9:48-57 大小写字母和数字的ASCII转换: 数字转字母: 语法: String.fromCharCode...大于 0xFFFF 的数字将被截断。 不进行有效性检查。 返回值 一个长度为N的字符串,由N个指定的UTF-16代码单元组成. 描述 该方法返回一个字符串,而不是一个  String 对象。...由于 fromCharCode() 是  String 的静态方法,所以应该像这样使用:String.fromCharCode(),而不是作为你创建的 String 对象的方法。...: 'a'.charCodeAt(0) 结果: 97  封装的方法: function convert(num){     return num <= 26 ?           ...,转载请注明出处:《大小写字母、数字的ASCII码值,及字母数字的转换》 https://www.w3h5.com/post/414.html

    6.9K10

    【Python数据魔术】:揭秘类型奥秘,赋能代码创造

    需要注意的是,这些函数返回的结果都是字符串类型,并且带有对应进制的前缀,即 '0b' 表示二进制,'0o' 表示八进制,'0x' 表示十六进制。...以下是一个示例代码: # 字符串转整数(删除前缀 -- 通过切片处理) int_val = int(bin_str[2:], 2) print(int_val) # 输出 255 int_val...在实际应用中,可以根据需要选择合适的函数和参数来进行进制转换。 # ord() 是 Python 内置函数之一,用于将ASCII字符转换为对应的 Unicode 码点。...具体而言,ord() 接受一个字符串参数,表示要转换为码点的字符,然后返回该字符所对应的 Unicode 码点。...# chr() 是 Python 内置函数之一,用于将 Unicode 码点转换为对应的ASCII字符。

    9910

    考点:进制转化函数和数学通用方法【Python习题12】

    通过二进制的示例,我们可以看到一个八进制、十六进制表示后输出为对应十进制数据测试如下: 八进制测试: b=0o11 print(b) 输出9 十六进制测试: c=0xc print(c)...测试如下: d=101 print(d) 输出101 2.用函数进行进制转化 二进制、八进制、十六进制 转 十进制,使用int函数解决一切,int函数有两个参数,第一个参数是字符串,第二个参数表示进制...,以下是二进制转十进制的测试如下: a="101" b=int(a,2) print(b) 输出5 八进制转十进制测试: a="11" b=int(a,8) print(b) 输出9 十六进制转十进制测试...,都可以通过以上几个函数的联合使用,使得二进制、八进制、十进制、十六进制之间实现互相转化。...=result*8+ord(shu[i])-ord('0') #ord函数是将字符转为ascii码,这里巧妙使用数学中计算通项式得到实际数值 print(result) 总结: 我们平时在python

    1.2K30

    【Coding】聊聊字符编码那些事儿

    在Python中,使用print函数输出,会自动转换为十进制数,如下: 当然,也可以使用int()函数来进行转换,不需要带前缀: 注意:被转换的数据必须以...在python2中,使用ord()函数,可以得出字符的ASCII码(十进制) 使用chr()函数,可以得出ASCII码所对应的字符: ASCII码只包含128...然而中文的汉字量远不是ASCII码可以表示的,因此采用了新的GB2312编码来表示中文,即使用2个字节来表示一个汉字。...00110001 00110011 重新分为4组:011100 110011 000100 110011 开头补0转换为十进制:28 51 4 51 根据编码表得到base64编码:c z E z 如何确定一个字符串是否是...URL编码格式:%十六进制ASCII码 例如&的URL编码就是%26,通过编码传递&符: 并不是所有字符都需要URL编码,规则如下: 传输标准ASCII

    1.4K20

    前端开发中的字符编码

    escape/unescape函数针对宽字符做unicode编码,并针对码值做十六进制编码,所以使用escape针对汉字编码会得到形如"%uxxxx"的结果;encodeURI/decodeURI,encodeURIComponent...在大多数浏览器中,提供了ASCII字符的base64编码函数,即window.btoa()。...进制编码,顾名思义将ASC字符对应的码值按照十六进制或十进制编码,并转化为&#x;(16进制)或&#D;(10进制)形式。...;第三个例子说明了HTML解析器在进行词法分析前,首先进行解码,十六进制和十进制皆可,因此,结果自然输出形如的字符串;第四个例子则紧接着论证了内联在...具体操作可通过常用的几个函数来实现,如“eval,write,setTimeout,Function”执行编码后的字符串;同样,对于十进制编码的字串,通过结合String.fromCharCode和eval

    2.1K80

    ASCII编码介绍与学习总结

    关键点: ASCII码中大写与小写转换的位关系值得记录(重点)。 大写字母对应的 ASCII 值第 6 位置 1 则变成对应的小写字母,反之亦然。...--最小版本安装的可以字节安装man与ascii--> WeiyiGeek. 十六进制转换表(Hexadecimal->Ascii),学习逆向的时候您是逃不掉这个得!...字符表上的数字 32~126 分配给了能在键盘上找到的字符,当您查看或打印文档时就会出现:(可见)~~ 二进制 八进制 十进制 十六进制 缩写/字符 解释 00000000 0 0 0 NUL(null...转换 javascript 描述:将字符转成ASCII码,将ASCLL转换成字符串; var test =new String...(test.charCodeAt(i)); //输出我们输入的字符串 } console.log("Ascii码转字符串:"+conStr); //String.fromCharCode

    1.2K30

    进制转换

    十六进制:上面表现的形式还不是最简单的,我们还有更简单的。把二进制的数据,从右开始,每四位一组合,最左边不够的时候,补0。...十进制数据20转换为八进制数据24,如图所示: ? 十进制数据20转换为十六进制数据14,如图所示: ? 3. 快速的进制转换法 8421码,是bcd码的一种。...4.2 hex()函数 hex()函数用于将整数转换为以0x开头的十六进制字符串形式。...hex()函数的语法格式如下: hex(x) # 参数x:要转换的整数 # 返回值: 返回一个以0x开头的十六进制字符串 使用hex()函数将下面的整数转换为十六进制字符串形式,代码如下: print...使用oct()函数将下面的整数转换为八进制字符串形式,代码如下: # 输出对应的八进制字符串形式 print(oct(50)) print(oct(45)) print(oct(-33)) 运行结果如图所示

    2.6K10

    【C语言】五种方法实现C语言中大小写字母的转化

    tolower/toupper函数 tolower tolower函数是C标准库中用于将字母从大写转换为小写的函数。...码关系 通过ASCII码表来进行大小写字母的转换。...因此,我们可以通过将65的第6位(从右往左数,从0开始)设置为0来将其转换为小写字母。我们可以使用按位或操作符 | 来实现这一点。...我们知道大写字母和小写字母的ASCII码值之间差32。因此,我们可以通过将小写字母的第6位设置为0来将其转换为大写字母。我们可以使用按位与操作符 & 和按位取反操作符 ~ 来实现这一点。...它们之间的差值恰好是32。 在ASCII码中,将小写字母转换为大写字母,实际上就是将对应字符的第5位(从右往左数,从0开始)置为0。

    2.2K10

    js中数字中进制转换

    进制之间的转换 parseInt(num,8); //八进制转十进制 parseInt(num,16); //十六进制转十进制 parseInt(num).toString(8) //十进制转八进制...(num,16).toString(2) //十六进制转二进制 parseInt(num,16).toString(8) //十六进制转八进制 将数字转换为十六进制字符: hexString = yourNumber.toString...(16); 将字符转换为数字: yourNumber = parseInt(hexString, 16); 其他进制转十进制: 使用 parseInt()函数,parseInt解析一个字符串参数,并返回一个指定基数的整数...十进制转其他进制: 使用数字类型的toString方法,该方法可以接受一个参数,返回转化进制后的字符串。...(parseInt(x,8)); alert(parseInt(x,16)); //其他转其他 //先用parseInt转成十进制再用toString转到目标进制 alert(String.fromCharCode

    4.9K00

    DOS子程序汇编样例及详解

    ,加上3后放回 ADD AL,30H;将AL存的值+30H,得到ASCII 码 MOV DL,AL;将待输出字符的ASCII码传到DL中去 MOV AH,2 INT 21H;输出DL MOV...,这里采用6和7作为测试样例,结果符合预期。...码,即转换为数字 MOV BH, [buf1+3];将个位存入bh SUB BH,'0';减去0对应的ASCII码,即转换为数字 lea dx,infon2 mov ah,9 int 21h...+2] ;CL存入第一个数字的十位 SUB CL,'0' ;减去0对应的ASCII码,即转换为数字 MOV CH,[buf2+3] ;CH存入第一个数字的个位 SUB CH,'0' ;减去0对应的...在第一个实验中,最开始我想的是比较常规的做法,即先将十六进制转换为二进制,再将二进制转换为十进制输出,但后来在具体实验过程中发现过于复杂冗余,且消耗的内存资源较多,实现起来并不方便。

    75120

    Python字符串基础一

    字符串 Unicode字符串 在Python2中,普通字符串是以8位ASCII码进行存储的,而Unicode字符串则存储为16位unicode字符串,这样能够表示更多的字符集。...>>> 从输出可以看到4中字符串的结果是一样的,那为什么要这么麻烦呢?...例如: >>> >>> print("C:\nowhere") #我们想输出c:\nowhere C: owhere >>> #结果却发生了转义 >>> #这时应该使用r产生原始字符串: >>> print...** +**: >>> print ("I'am learning"+"python") I'am learningpython >>> 数值转换为字符串:str与repr 把值转换为字符串的两种机制...str是一个类型,它把值转换为合理形式的字符串 repr是个函数,它以合法的python表达式的形式来表示值 说明:repr的功能在Python2中可以以反引号来代替,不过Python3已经不再使用反引号

    55530

    从 JS 里的 MD5 转换踩坑开始说起

    }; 先不论其中的位运算是否有问题,已经可以看出,这个算法的转换结果只有1~3字节这三种情况,不会输出4字节的结果—— 所以,问题很明显了:它能处理常见的英文、汉字字符,但是无法处理结果为4字节的 0x10000...基于 Unicode 码点操作 原本的 encodeUTF8 函数中通过 String.prototype.charCodeAt() 操作原始字符串,得到的是根据 UCS-2 计算的字长、相当于 UTF...6) | 0x80, cp & 0x3F | 0x80, ); } } return output; } 返回结果从字符串变成了更方便运算的类...通过输出结果我们可以看出,其中 \x8C 和 \x22 都被当成单个的字符进行处理了,而 JavaScript 中 UCS-2/UTF-16 的实现下,一个字符是以2或4个字节进行存储的。...所以,这里最终得到的字符串其实是: 0x008C 0x0022,而不是 0x8C22。

    2.7K50
    领券