SummerSec
SummerSec
> 哥斯拉内存马只传入了data数据,没有传入ServletContext等信息,导致除了基础功能外,插件都无法使用 > > 解决方案 > 将 > f.equals(arrOut); > f.equals(data); > > 改为 > f.equals(arrOut); > f.equals(request); > > 即可 > 好的谢谢反馈,周末改一版。
建议用releases下的发行版,直接git可能有bug
啥意思?第二次检测目标?
余弦相似度算法考虑实现吗?
> > 余弦相似度算法考虑实现吗? > > 可以, 不过要排https://github.com/guonaihong/gstl 这个项目发布之后了. OK,我看看能不能学会,康康能不能提交一个pr,simhash也是相似度算法。
我通过简单实验发现如果将文本进行base64编码之后,相似度结果会更加精确一些。 示例代码: ```go package main import ( "encoding/base64" "fmt" "github.com/antlabs/strsim" ) func main() { en := base64.NewEncoding("ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/") s1 := "\n\n\nError\n\n \n body {\n width: 35em;\n margin: 0 auto;\n font-family: Tahoma,...
另外,我想加入你们组织,不知是否可以?
我大致简单说明一下我加入的余弦相似度算法和Jaro-Winkler算法 首先是Jaro-Winkler算法,我在看相关文档发现你提出`Jaro-Winkler - this implementation of Jaro-Winkler does not limit the common prefix lengt`问题的解决方法,相同的前缀最大值为4,也就是p的影响因子的取值范围为[0,4]是一个闭区间,如果大于4取4。在[jaro-and-jaro-winkler-similarity](https://www.geeksforgeeks.org/jaro-and-jaro-winkler-similarity/?ref=lbp)有着对应的代码 
余弦相似度,相关原理就是高中学过的空间向量定理,两个向量夹角的角度。但余弦相似度得计算词出现频率,如果用分词的效率不高,并且计算量,内存开销都会很大。于是我想到采用base64编码的方式,因为base64编码的字符串同一个字符是相同的,也等价的计算词语出现的频率。然后将base64标准字符串进行余弦计算。 ``` package main import ( "fmt" "github.com/antlabs/strsim" ) func main() { Levenshtein := strsim.Compare("abc", "ab") fmt.Printf("Levenshtein Algorithm: %f\n", Levenshtein) dice := strsim.Compare("abc", "ab", strsim.DiceCoefficient()) fmt.Printf("Dice Coefficient Algorithm: %f\n", dice)...
simhash的难点感觉是在分词和加权,分词处理之后,加权操作目前没有很好的解决方法。分词的话,如果是中英文的都有的情况也很难处理,比例说网页的源代码。对于分词这部分,我目前简单将文本进行base64编码,然后将粗暴的以四个字符分为一组。对于加权这块,我是统计每组出现的概率进行加权。 ```go Levenshtein := strsim.Compare("abc", "ab") fmt.Printf("Levenshtein Algorithm: %f\n", Levenshtein) dice := strsim.Compare("abc", "ab", strsim.DiceCoefficient()) fmt.Printf("Dice Coefficient Algorithm: %f\n", dice) jaro := strsim.Compare("abc", "ab", strsim.Jaro()) fmt.Printf("Jaro Algorithm: %f\n", jaro) jarow...