<html><head><meta http-equiv="Content-Type" content="text/html; charset=utf-8"></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; line-break: after-white-space;" class="">Hi Junxiao,<div class=""><br class=""></div><div class="">You have done me a huge favor!</div><div class=""><br class=""></div><div class="">I have been working on coming up with a better idea to avoid the potential problems you have pointed out.</div><div class=""><br class=""></div><div class="">It helps a lot. Thank you.</div><div class=""><br class=""></div><div class="">Best,</div><div class="">Puming</div><div><br class=""><blockquote type="cite" class=""><div class="">On Apr 25, 2021, at 3:08 PM, Junxiao Shi <<a href="mailto:shijunxiao@email.arizona.edu" class="">shijunxiao@email.arizona.edu</a>> wrote:</div><br class="Apple-interchange-newline"><div class=""><div dir="auto" class="">Hi Puming</div><div dir="auto" class=""><br class=""></div><div dir="auto" class="">I see two problems:</div><div dir="auto" class="">πŸ”Έ Who's signing the new Data? Applications would not work correctly if you break the signature.</div><div dir="auto" class="">πŸ”Έ If the original Interest name ends with an implicit digest component, how to create the new Interest? A direct transformation would not match the transformed Data.</div><div dir="auto" class=""><br class=""></div><div dir="auto" class="">If you are trying to <b class="">encapsulate</b> the Data, you can set the wire encoding of the original Data as the payload of the original Data.</div><div dir="auto" class="">However, this is incompatible with implicit digest.</div><div dir="auto" class=""><br class=""></div><div dir="auto" class="">If the purpose is to affect forwarding, have a look into <b class="">forwarding hint</b>, which is the standard solution to "forward /a/b according to FIB entry /b".</div><div dir="auto" class="">It not only preserves the signature, but also is compatible with implicit digest.</div><div dir="auto" class=""><br class=""></div><div dir="auto" class="">Yours, Junxiao </div><div class=""><br class=""><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Sun, Apr 25, 2021 at 11:18 Puming Fang <<a href="mailto:pfang@umass.edu" class="">pfang@umass.edu</a>> wrote:</div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<br class="">
Dear NDN team,<br class="">
<br class="">
I hope you are doing great!<br class="">
<br class="">
It’s me again. To move forward with my research work on NDN, I need to create new Interest and  new Data from existing ones.<br class="">
<br class="">
Currently I am writing two applications for a specific node.<br class="">
<br class="">
1. When the node receives Interest "/a/b”, it removes β€œ/a” from β€œ/a/b” and sends out the new Interest β€œ/b” to request Data.<br class="">
2. When the node receives Data β€œ/b”, it adds β€œ/a” to the Data β€œ/b”, therefore, the Data is changed to β€œ/a/b”. Then it sends out the Data β€œ/a/b”.<br class="">
<br class="">
I have two questions. Any guidance would be greatly appreciated.<br class="">
1. How to create new Interest and new Data from existing ones?<br class="">
2. Since this node is both consumer and producer, would you recommend me to write one application that include these two functions or two separate applications and install them on one node?<br class="">
<br class="">
Thank you.<br class="">
Best,<br class="">
Puming<br class=""></blockquote></div></div>
</div></blockquote></div><br class=""></body></html>